我正在使用AWSSDK.S3 version 3.3.10.2
,AWSSDK.CORE版本3.3.17.6
。
我正在尝试向TransferUtility.Upload
函数
我按照此处写的文档:http://docs.aws.amazon.com/sdk-for-net/v2/developer-guide/retries-timeouts.html
这是我的代码:
m_AmazonS3Config.Timeout = TimeSpan.FromMilliseconds(1);
m_AmazonS3Config.ReadWriteTimeout = TimeSpan.FromMilliseconds(1);
using (IAmazonS3 s3Client = new AmazonS3Client(m_AmazonS3Config))
{
var fileTransferUtility = new TransferUtility(s3Client);
var fileTransferUtilityRequest = new TransferUtilityUploadRequest
{
BucketName = bucketName,
Key = key,
InputStream = fileStream,
};
fileTransferUtility.Upload(fileTransferUtilityRequest);
}
我尝试上传一个大文件但超时没有命中,为什么会这样?
答案 0 :(得分:0)
AWS v3文档为here。您正在使用v3,但您正在关注v2文档。
此外,您还将超时设置为1毫秒。考虑到大文件,这还不够。尝试设置大超时。
var client = new AmazonS3Client(
new AmazonS3Config
{
Timeout = TimeSpan.FromSeconds(10), // Default value is 100 seconds
ReadWriteTimeout = TimeSpan.FromSeconds(10), // Default value is 300 seconds
MaxErrorRetry = 2 // Default value is 4 retries
});