Ste*_*pel 28
同时,Amazon EC2记录了他们的一般查询API请求率处理:
我们限制每个AWS账户的Amazon EC2 API请求,以帮助提高服务的性能.我们确保所有对Amazon EC2 API的调用(无论它们来自应用程序,调用Amazon EC2命令行界面还是Amazon EC2控制台)都不会超过允许的最大API请求率.请注意,IAM用户发出的API请求归属于底层AWS账户.
Amazon EC2 API操作分为以下几类:
[...]如果API请求超出其类别的API请求率,则请求将返回RequestLimitExceeded错误代码.要防止出现此错误,请确保您的应用程序不会以高速率重试API请求.您可以在轮询时使用小心并使用指数退避重试来执行此操作.
虽然细节可能因其过多的服务而有所不同,但我认为通常采用类似的模式是安全的(至少由于EC2支持许多其他服务).
来自EC2的上述解释以及来自与AWS支持交互的用户的一些间接引用似乎表明限制可能因服务状态和每个帐户而异,即AWS能够根据专用提高/减少个人帐户的限制高性能用例,疑似滥用等,请参阅:
RequestLimitExceeded在客户端错误代码中,暗示每个帐户处理:
您的帐户已超出Amazon EC2 API允许的最高请求率.[...]
Rightscale支持表示我们需要联系亚马逊以增加EBS API速率限制,因为我们似乎超出了对此API的调用,因为我们在此帐户中拥有大量MySQL数据库,并且他们都拥有用于备份的EBS快照.
AWS团队对错误:请求限制的响应超出了使用boto启动和终止实例:
您将在EC2中看到的速率限制可能因系统负载而异.
Saul对Amazon Web Services S3请求限制的回答:
但是,在发布此问题后,我收到了来自AWS的电子邮件,该电子邮件说我已经将我的LIST请求限制为每秒10个请求,因为我有太多要去特定的存储桶.
当然,它们通常是大多数规则的例外,我知道以下两个服务记录了特定的限制:
Amazon Route 53正在记录其在Amazon Route 53 API请求和实体计数上的特定限制:
所有请求:每个AWS账户每秒有五个请求.[...]
对于大多数API操作,Amazon SES还记录了一个请求/秒的特定限制(可能是SendEmail和SendRawEmail除外),请参阅例如GetSendQuota:
每秒一次请求会限制此操作.
如故障排除API请求错误所述,在客户端处理此问题的正确方法是在AWS中实施错误重试和指数退避(大多数AWS SDK同时自动应用此指南,包括调整默认重试策略或添加自定义的选项实施甚至).
| 归档时间: |
|
| 查看次数: |
23882 次 |
| 最近记录: |