【问题标题】:Appengine: Why dedicated memcache keeps resetting?Appengine:为什么专用内存缓存不断重置?
【发布时间】:2016-02-15 11:52:20
【问题描述】:

我正在使用 GAE 1 gb 专用内存缓存。 1 gm 的大小足以满足我的应用程序使用。

memcache 重置行为很奇怪。

通常我会看到以下值:

  • 命中率 88.68%
  • 最旧的物品年龄 2 天
  • 总缓存大小至 800 MB

然后突然重置为以下内容:

  • 最旧项目年龄 5 分钟
  • 总缓存大小 20 MB

我很担心为什么会重置?

任何信息/帮助将不胜感激。

【问题讨论】:

    标签: google-app-engine memcached dedicated


    【解决方案1】:

    我能想到的这种行为有两种可能的解释。

    1. 您的应用所在的 Google 数据中心正在进行维护。在这种情况下,Google 可能会决定取消您的价值观。

      无论是共享的还是专用的,memcache 都不是持久存储。根据缓存的 LRU 策略,当缓存填满时,键可能会被逐出。缓存配置或数据中心维护事件的更改也可能刷新部分或全部缓存。 (Source)

    2. 可能是应用程序代码本身。由于您可以设置缓存值的最大生命周期,因此可能会发生大量值同时衰减的情况。当您的任务偶尔将许多值加载到内存缓存中时尤其如此。

    如果您可以排除 (2) 并且行为是可重现的(或者驱逐发生的方式通常可以通过维护来解释),您可能需要联系 Google 支持并询问您的付费服务的情况。

    【讨论】:

    • 感谢您的回复。在我的情况下,大多数键都没有超时。所以,只要总缓存数据大小保持在 1 gb(最大缓存大小)以下,我就想不出服务器驱逐任何键的任何理由。
    • 重置非常频繁,例如不到 24 小时。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-18
    • 1970-01-01
    • 2014-01-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多