这个问题是How to implement an atomic integer in Java App Engine?的后续问题。基本上我创建了一个推送任务队列来实现SMS验证。我正在使用Twilio发送短信。每条SMS都是一个五位数的密码。以下是app-engine的queue.xml
文件。
<queue-entries>
<queue>
<name>sms-verification</name>
<rate>200/s</rate>
<bucket-size>100</bucket-size>
<max-concurrent-requests>10</max-concurrent-requests>
</queue>
</queue-entries>
我希望在不创建新实例的情况下获得最佳费率。我认为实例创建在app-engine上很昂贵,但我不确定它是否与任务队列相同。这个配置文件好吗?它缺少什么吗?这是我第一次创建一个,所以感谢任何指导。
答案 0 :(得分:0)
这个问题没有正确或错误的答案。您必须使用配置设置才能获得满足您要求的最佳结果。您需要考虑以下因素:
显然,如果你想立即发送所有信息会更加昂贵,如果你能够容忍甚至很小的延迟(例如1分钟),它会更便宜,因为它可以平滑至少一些突然的峰值。
请注意,音量越高,这些优化变得越不重要,因为1个超过20个实例的新实例并不像1个新实例那样昂贵。