Memcached最佳实践 - 小对象和许多键或大对象和几个键?

jb.*_*jb. 23 memcached

memcached用来存储复杂计算的整数结果.我有几百个可以缓存的整数对象!我应该将它们缓存在更复杂的对象中的单个键下,还是应该为对象使用数百个不同的键?(我正在缓存的对象不需要每天多次失效)

Ale*_*lex 10

我会说很多小钥匙.这样,您可以通过最少的序列化工作在1次调用中获得所需的确切结果.

如果将它存储在另一个对象(例如数组)中,则必须从缓存中获取数组,然后从该数组中再次获取实际需要的项目,此外还有再次序列化/反序列化整个复杂对象的开销.根据您选择的语言,这可能意味着从头开始手动编写序列化/反序列化功能.


小智 7

我在http://dammit.lt/2008/12/25/memcached-for-small-objects/上写了一些大的分析- 它概述了如何为小对象存储优化memcached - 它可能会对这个问题有所了解.


jro*_*way 1

对缓存值进行的处理越少越好。那么为什么不将它们单独转储到缓存中呢?