在我的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