0

我正在开发一个 GAEJ 应用程序,该应用程序将在活动的基础上和定期通过电子邮件发送出去。
我目前的问题是我很难想出最好的方法来跟踪我在每个配额中的位置。我曾希望尝试在我的代码中访问 appstats 以检查最后一分钟和当天的 mail.send 调用总数,但该代码的文档相当缺乏。

任何建议将不胜感激,干杯。

4

2 回答 2

0

正如 Ian 建议的那样,您可以跟踪通过计数器发送的邮件数量。如果有大量邮件,请考虑使用分片计数器。

另一种选择是将消息放入任务队列,并将任务队列的输出限制为每天 100 条消息(如果您想保持在免费配额之下)。这样,如果今天无法发送消息,明天就会发送。

要强制执行另一个配额,例如 8 条消息/分钟或 8 个附件/分钟,您可以简单地链接任务队列:第一个任务队列的速率为 100/天,然后另一个任务队列的速率为 32/分钟。这样你就可以完全控制你的配额。

注意事项:

  • 为了匹配 Google 计算配额的方式,您必须为每个收件人创建一个任务,因此对于发送给 4 个收件人的一封邮件,您将创建 4 个任务
  • 如果您发送太多邮件,任务队列可能会被阻塞(它们清空的速度比填充的慢)。所以你必须注意任务的数量。
于 2014-02-28T22:14:40.080 回答
0

一种方法是在内存缓存中为每个配额日保留一个计数。这些计数中的每一个都需要由数据存储分片计数器支持,以了解何时/如果内存缓存计数被驱逐。

于 2014-02-28T10:21:16.983 回答