我正在编写一个从 GAE 上的 twitter 读取消息的应用程序。应用程序应该一直阅读消息并对它们做出反应。因为我目前正在测试一个我不想使用后端的想法,这是满足这种需求的自然选择。我正在使用每分钟运行一次的 cron 作业和 servlet,它通过运行长达 50 秒的连续读取消息来处理该作业。
- 我注意到 GAE 最多开放 3 个实例来处理此流量,这很糟糕吗?
- 后端是完成此类工作的正确工具,对吧?
- 没有后端有没有更好的方法?
谢谢你。
我正在编写一个从 GAE 上的 twitter 读取消息的应用程序。应用程序应该一直阅读消息并对它们做出反应。因为我目前正在测试一个我不想使用后端的想法,这是满足这种需求的自然选择。我正在使用每分钟运行一次的 cron 作业和 servlet,它通过运行长达 50 秒的连续读取消息来处理该作业。
谢谢你。
实例的启动由应用程序设置控制。如果您的请求需要很长时间才能完成,那么它可能会触发新实例的启动 - 取决于所述设置。
使用任务队列可以非常有效地获取数据。为此,您不需要后端。当您需要在请求之间将数据保存在内存中时,后端非常有用,从而有效地节省了 Datastore 请求。
如前所述 - 查看任务队列以获取任务:数据获取任务需要多长时间?您需要他们多久执行一次?
我注意到 GAE 最多开放 3 个实例来处理此流量,这很糟糕吗?
我不认为这很糟糕,因为多亏了这 3 个实例,您的 cron 可以继续正常工作。
Cron 执行可能会延迟几秒钟,启动实例也可能需要一些额外的时间,除此之外,在 50 秒之后,您的应用程序可能会运行一些代码,这也可能需要一些时间。
如果您有一些证据表明在调用特定的 cron 请求时运行之前的 cron 的实例处于可用状态,请在此处分享。
后端是完成此类工作的正确工具,对吧?
绝对地。
没有后端有没有更好的方法?
除非知道什么对您“更好”,否则很难回答。现在的策略有问题吗?