У меня есть случайное исключение при чтении / хранении объектов с помощью Amazon S3 из приложения asp.net.
Исключение говорит:
Невозможно прочитать данные из транспортного соединения: операция блокировки была прервана вызовом WSACancelBlockingCall. Операция блокировки была прервана вызовом WSACancelBlockingCall
at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
Любые идеи о том, как я могу найти, что является причиной этой ошибки?
вот моя функция чтения:
public Image GetImage(string fullKey, out string errorMessage)
{
errorMessage = null;
try
{
GetObjectResponse response = s3Client.GetObject(new GetObjectRequest()
{
BucketName = BucketName,
Key = fullKey,
Timeout = ImportTimeout
});
return Image.FromStream(response.ResponseStream);
}
catch (Exception e)
{
errorMessage = e.Message;
Log.Current.WriteError(e);
}
return null;
}
s3Client инициализируется в конструкторе этого класса:
s3Client = AWSClientFactory.CreateAmazonS3Client(AWSAccessKey, AWSSecretKey);