我有一个应用程序在S3上做了很多工作,主要是从它下载文件.我看到了很多这样的错误,我想知道这是否是我的代码上的内容,或者服务是否真的不可靠.
我用来从S3对象流中读取的代码如下:
public static final void write(InputStream stream, OutputStream output) {
byte[] buffer = new byte[1024];
int read = -1;
try {
while ((read = stream.read(buffer)) != -1) {
output.write(buffer, 0, read);
}
stream.close();
output.flush();
output.close();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
Run Code Online (Sandbox Code Playgroud)
此OutputStream是一个新的BufferedOutputStream(新的FileOutputStream(文件)).我使用的是最新版本的Amazon S3 Java客户端,这个调用在放弃之前重试了四次.因此,在尝试了4次之后它仍然失败.
任何有关如何改进这一点的提示或提示都表示赞赏.