配置应用程序引擎推送任务队列以进行twilio SMS验证

时间:2015-03-25 21:59:08

标签: java google-app-engine twilio task-queue

这个问题是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上很昂贵,但我不确定它是否与任务队列相同。这个配置文件好吗?它缺少什么吗?这是我第一次创建一个,所以感谢任何指导。

1 个答案:

答案 0 :(得分:0)

这个问题没有正确或错误的答案。您必须使用配置设置才能获得满足您要求的最佳结果。您需要考虑以下因素:

  1. 您每天/每周都会加载:或多或少均匀或有尖峰。
  2. 延迟容忍度:等到发送消息可以接受多长时间。
  3. 显然,如果你想立即发送所有信息会更加昂贵,如果你能够容忍甚至很小的延迟(例如1分钟),它会更便宜,因为它可以平滑至少一些突然的峰值。

    请注意,音量越高,这些优化变得越不重要,因为1个超过20个实例的新实例并不像1个新实例那样昂贵。