0

我有一个 golang AppEngine 应用程序,它使用任务队列并行运行蒙特卡罗风格的模拟,并大量使用 memcache 来存储中间结果。对于少量进程/任务(< 100),一切正常,但我发现在大量(> 1000)时,我从 memcache 读取或更新中间数据时遇到很多失败,并出现错误“已取消:截止日期”超过'。这似乎在初始化任务后 7-10 秒发生。特别的违规者似乎是 memcache.JSON.Get 和 memcache.IncrementExisting。有没有可能我以某种方式超载了内存缓存?

4

2 回答 2

1

问题 6519可能相关

如果您启用了 appestats,并且 memcache 日志记录超过 1mb,则会出现“堆外”错误,然后所有后续的 memcache sets/gets/admin 调用都会失败。实例上传暂时“修复”了问题。我禁用了 appestats 以更永久地解决问题。

于 2013-01-28T22:01:16.857 回答
0

似乎这与底层 AppEngine 基础设施问题有关(现已解决)

于 2013-02-03T06:53:03.237 回答