根据文档,memcache单元的最长生命周期为一个月,除非由于服务器ram容量问题而被删除。
我的应用程序在memcache(1600多个项目)中存储{'customer_id':'customer_name'},用于自动完成和客户索引需求。
继承人代码:
memcache.add('keys', keys, time=86400) #if 'keys' is absent, then all memcache items are regenerated.
memcache.add_multi(names, time=86500, key_prefix='customer_id_')
问题是我的大部分作品在一个小时左右到期,只剩下10件或11件。 docs还说如果没有设置时间,memcache项的默认生命周期是一小时。
所以我设置了memcache的生命周期(如果是这样,为什么会留下10个项目)或google memcache这对于11个以上的项目是不可靠的(在这种情况下该怎么办?以某种方式将这些数据存储在XML中?) ?
答案 0 :(得分:0)
我安静的应用程序的当前统计数据显示它可以轻松容纳数百个项目几个小时:
Item count: 285 item(s)
Total cache size: 5462609 byte(s)
Oldest item age: 11 hour(s) 38 min(s) 29 second(s)
如果您有1600个项目且一个项目(键+数据)大小小于500个字节,我建议将它们全部存储在单个memcache条目中作为字典或其他内容。