我上传了大约200,000个文件(每个文件最大大小约为1MB)到EC2实例(在西欧)的S3存储桶中。
从使用CloudWatch监控EC2(查看NetworkOut指标)来看,随着时间的推移,上传传输似乎有所下降:
我分几次上传文件,通常在四五个小时之后(但有时候会更快),下载似乎是一致的。
这些文件是用一个Python脚本上传的:
我已经尝试了两种上传.gzip文件的方法…
boto3.client("s3").upload_file(file.gz, bucket, file.gz) …但是我看到每种方法都有同样的下降。
什么可能导致这个? 或者我应该收集哪些信息来进行debugging?
编辑
下面是同一时期的图表,显示了BurstBalance指标(EC2实例是t2.small):
这是CPUCreditBalance :
我最好的猜测是这是你的EBS I / O信用 。 使用BurstBalance CloudWatch指标监控此项。 请检查,张贴图表,如果不是,我会想更多。
更新 – 我要求您添加的第三个图表显示您已经用完了CPU信用。 你的CPU正在被限制。 您可以接受较慢的性能或临时更改为更适合的实例。
这看起来相当CPU密集。 你可以移动到一个t2大,获得四倍的CPU许可,或者我可能会转移到一个通用的m4实例一段时间。 更改实例types很简单 – 停止实例,右键单击,更改实例types,然后重新启动它。