我有一个应用程序在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);
}
}
这个OutputStream是一个新的BufferedOutputStream( new FileOutputStream( file ) )。我正在使用最新版本的Amazon S3 Java客户端,并且在放弃之前会尝试四次重试此调用。因此,在再试了4次后它仍然失败。
如果有任何提示或建议,欢迎分享。