renyanping 发表于 2015-11-18 14:32:49

memcached最大能存储多大的单个item?

1MB。如果你的数据大于1MB,可以考虑在客户端压缩或拆分到多个key中。  为什么单个item的大小被限制在1M byte之内?
啊…这是一个大家经常问的问题!
  简单的回答:因为内存分配器的算法就是这样的。
  详 细的回答:Memcached的内存存储引擎(引擎将来可插拔…),使用slabs来管理内存。内存被分成大小不等的slabs chunks(先分成大小相等的slabs,然后每个slab被分成大小相等chunks,不同slab的chunk大小是不相等的)。chunk的大小依次从一个最小数开始,按某个因子增长,直到达到最大的可能值。
  如果最小值为400B,最大值是1MB,因子是1.20,各个slab的chunk的大小依次是:slab1 - 400B slab2 - 480B slab3 - 576B …
  MEMCACHE 性能优化:http://tank.blogs.tkiicpp.com/category/programming/memcache/
  ------------------------------------------------------------------------
  来源:http://blog.iyunv.com/adparking/article/details/6897842
页: [1]
查看完整版本: memcached最大能存储多大的单个item?