memcache单个缓存值限制为1M(1000000bytes),超过这个限制的时候会出如下错误。

ValueError: Values may not be more than 1000000 bytes in length; received 2000000 bytes

memcache的keys限制为250 bytes,超过这个长度会报错。

ValueError: Keys may not be more than 250 bytes in length, received 14670 bytes

memcache的时间设置没限制,但服务器会自动清理缓存,官方好像说过最长为1个月时间(3600*24*30)。

memcached的简单限制就是键(key)和item的限制。最大键长为250个字符。可以接受的储存数据不能超过1MB,因为这是典型slab 的最大值。这里我们可以突破对key长度的限制。
问题解决:
修改memcached源文件。在memcached.h中定义key的长度,其代码为:
#define KEY_MAX_LENGTH 250
更换为所需要的长度,比如:1024
#define KEY_MAX_LENGTH 1024
 

但不建议增大key,key大 value小,效率就低了