2

s3 バケットとの間でデータを読み書きするアクティビティ (python スクリプト) がある AWS データ パイプラインがあります。最近、ソケット接続のクローズが原因で s3 からの読み取りが失敗するというアクティビティの失敗に気付きました。エラーは断続的です。障害は、スクリプトの同じ行で正確に発生します。

read_buff = key_file.read(1024)
File "/usr/lib/python2.7/site-packages/boto/s3/keyfile.py", line 89, in read
  return self.key.read(size)
File "/usr/lib/python2.7/site-packages/boto/s3/key.py", line 373, in read
  data = self.resp.read(size)
File "/usr/lib/python2.7/site-packages/boto/connection.py", line 414, in read
  return httplib.HTTPResponse.read(self, amt):
File "/usr/lib64/python2.7/httplib.py", line 561, in read
  s = self.fp.read(amt)
File "/usr/lib64/python2.7/socket.py", line 380, in read
  data = self._sock.recv(left)
File "/usr/lib64/python2.7/ssl.py", line 241, in recv
  return self.read(buflen)
File "/usr/lib64/python2.7/ssl.py", line 160, in read
  return self._sslobj.read(len)

error: [Errno 104] Connection reset by peer

このコードでは、s3 から 1KB のチャンクでデータを読み取ります。失敗は、s3 のファイルからの読み取りの途中で発生します。EC2 インスタンスから s3 バケットへの接続数に上限があるかどうかは誰にもわかりませんか?

4

0 に答える 0