Memcached

Posted 黑客不黑撒

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Memcached相关的知识,希望对你有一定的参考价值。

Memcached报错:CLIENT_ERROR bad data chunk

这是因为存储的字节长度与指定的长度不匹配造成的,如:

set username 0 0 2

你是打算存储两个字节,但如果你输入不等于2个字节就会报

CLIENT_ERROR bad data chunk

错误,注意必须是2个,多于或少于2个字节都会报这个错误。

 

Ubuntu

sudo apt-get install memcached

sudo service memcached status/stop/start/restart

 

Linux下设置memcached访问IP

vim /etc/memcached.conf

注释掉 -l 127.0.0.1

sudo service memcached restart

 

 

一、安装gcc

由于memcachedlibevent是由C编写的,所以首先确保你的系统安装了gcc,如果没有安装,使用yum安装即可

$ yum -y install gcc

$ yum -y install gcc-c++

$ gcc --version

 

二、安装libevent

wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz

$ tar -xzf libevent-2.0.21-stable.tar.gz

$ cd libevent-2.0.21-stable

$ ./configure --prefix=/usr

$ make

$ make install

安装完后可以查看下/usr/lib是否有libevent等文件(ls -al /usr/lib | grep libevent)

#如果时间不对,需要修改系统时间

 

三、安装memcached

wget http://memcached.org/files/memcached-1.4.21.tar.gz

$ tar xzvf memcached-1.4.15.tar.gz

$ cd memcached-1.4.15

$ ./configure --with-libevent=/usr

$ make

$ make install

安装结果(ls -al /usr/local/bin/memcached)

 

四、启动memcached

memcached -d -m 512 -p 11211 -u root -c 256 -P /var/run/memcached.pid

 

五、关闭防火墙11211端口

$ vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 11211 -j ACCEPT

$ service iptables restart

 

六、telnet 访问

然后就可以使用telnet,来测试memcache的连接状态,如果没有安装telnet服务,可以执行

$ yum install telnet-server #安装服务

$ yum install telnet #安装命令

 

然后编辑vi /etc/xinetd.d/telnet 文件,激活telnet,默认是禁用的,默认为yes,需要改成no

disable = no

 

然后重启服务,执行命令

$ service xinetd restart

 

然后就可以测试memcached的连接,执行命令

$ telnet 127.0.0.1 11211

输入stats,会输出memcache的一些连接信息,包括PID

如果需要退出,则执行quit命令即可

 

以上是关于Memcached的主要内容,如果未能解决你的问题,请参考以下文章

精华汇总

RabbitMQRedisMemcacheSQLAlchemy

Memcached

memcached

缓存相关

缓存之memcached