gpt4 book ai didi

java - 当 App Engine (Java) 启动新实例时,如何确保任务队列 Memcache cron 在它们之间共享?

转载 作者:太空宇宙 更新时间:2023-11-04 08:43:59 25 4
gpt4 key购买 nike

这是一个问题,我的应用程序在网站上偶尔会遇到 CPU 限制峰值,其中几乎所有工作都是由于 cron 任务而完成的,该任务每小时频繁运行以调用重新填充内存缓存的任务队列。

最近该网站的流量激增,导致多个实例启动。

然而,令我惊讶的是,尽管只有不到 1% 的 CPU 使用率与流量峰值相关,但那几天我还是不得不降低 Memcache 任务的频率。 (此应用程序中完成的 99% 的工作是 (a) 在内存缓存任务队列中和 (b) 在客户端 JavaScript/JSON 逻辑中)。

我想知道的是,启动的其他实例是否都需要自己的 Memcache 任务队列,也许这就是为什么我在那些日子里看到与重新填充 Memcache 的任务队列相关的 CPU 使用率要高得多的原因 - 该任务实际上是为每个实例单独执行的

如果是这样,我如何确保任务队列及其填充的 Memcache 在实例之间共享(如果可能的话)?

最佳答案

任务队列和内存缓存都是全局的。您可能以某种取决于实例数量的方式将任务排入队列,因此您启动了比应有的任务更多的任务 - 如果没有看到您的代码,就无法判断。

关于java - 当 App Engine (Java) 启动新实例时,如何确保任务队列 Memcache cron 在它们之间共享?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4725365/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com