Memcached 对象太大

Memcached 对象太大

在我的memcahced配置中我有

 PORT="11211"                                                                                                                                                                                                                              
 USER="memcached"                                                                                                                                                                                                                          
 MAXCONN="1024"                                                                                                                                                                                                                            
 MAXITEMSIZE=5M                                                                                                                                                                                                                            
 CACHESIZE="12288"                                                                                                                                                                                                                         
 LOGFILE="/var/log/memcached.log"                                                                                                                                                                                                          
 OPTIONS="-vv >> /var/log/memcached 2>&1" 

这也是我运行stats

STAT limit_maxbytes 67108864

但当我尝试写一个大项目时

set test 0 60 5000000 asdas
SERVER_ERROR object too large for cache

答案1

嗯,问题在于你如何启动 memcached。如果你从基于 init.d 的系统(如 Centos6)启动,你必须检查 /etc/initd./memcached 脚本是否使用 -I 选项启动守护进程。在我的例子中,-I 选项未在 init 脚本中设置。所以:

start () {
...
 daemon --pidfile ${pidfile} memcached -d -p $PORT -u $USER  -m $CACHESIZE -c -I $MAXITEMSIZE $MAXCONN -P ${pidfile} $OPTIONS

类似地,如果你的系统基于 systemd,比如 Centos7

[Service]                                                                                                                                                                                                                                 
Type=simple                                                                                                                                                                                                                               
EnvironmentFile=-/etc/sysconfig/memcached                                                                                                                                                                                                 
ExecStart=/usr/bin/memcached -u $USER -p $PORT -I $MAXITEMSIZE -m  $CACHESIZE -c $MAXCONN $OPTIONS   

相关内容