操作系统:CentOS 5.5
Memcache版本:1.4.5
Memcache需要libevent库,不过centos自带了libevent,不过我们也可以自己安装libevent,按照以下步骤操作:
1、卸载系统自带的libevent,命令:
rpm -qa|grep libevent #拿到rpm包名
rpm -e libevent-******** -nodeps
2、安装libevent,下载libevent安装包:libevent-1.4.12-stable.tar.gz,然后解压;
./configure -–prefix=/usr
make
make install
测试libevent是否安装成功:ls -al /usr/lib | grep libevent
lrwxrwxrwx 1 root root 21 02-18 10:21 libevent-1.4.so.2 -> libevent-1.4.so.2.1.3
-rwxr-xr-x 1 root root 308572 02-18 10:21 libevent-1.4.so.2.1.3
-rw-r--r-- 1 root root 395418 02-18 10:21 libevent.a
lrwxrwxrwx 1 root root 26 02-18 10:21 libevent_core-1.4.so.2 -> libevent_core-1.4.so.2.1.3
-rwxr-xr-x 1 root root 110050 02-18 10:21 libevent_core-1.4.so.2.1.3
-rw-r--r-- 1 root root 149512 02-18 10:21 libevent_core.a
-rwxr-xr-x 1 root root 860 02-18 10:21 libevent_core.la
lrwxrwxrwx 1 root root 26 02-18 10:21 libevent_core.so -> libevent_core-1.4.so.2.1.3
lrwxrwxrwx 1 root root 27 02-18 10:21 libevent_extra-1.4.so.2 -> libevent_extra-1.4.so.2.1.3
-rwxr-xr-x 1 root root 246895 02-18 10:21 libevent_extra-1.4.so.2.1.3
-rw-r--r-- 1 root root 307994 02-18 10:21 libevent_extra.a
-rwxr-xr-x 1 root root 867 02-18 10:21 libevent_extra.la
lrwxrwxrwx 1 root root 27 02-18 10:21 libevent_extra.so -> libevent_extra-1.4.so.2.1.3
-rwxr-xr-x 1 root root 825 02-18 10:21 libevent.la
lrwxrwxrwx 1 root root 21 02-18 10:21 libevent.so -> libevent-1.4.so.2.1.3
注意:如果libevent的安装到其他目录下,则还需要建立 libevent-1.4.so.2 到 /usr/lib 的软连接,这样其他程序运行时才能找到libevent库,使用命令:ln -s /usr/local/lib/libevent-1.4.so.2 /usr/lib/libevent-1.4.so.2
否则在启动Memcache的时候会遇见如下错误提示: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory
3、安装memcache
tar zxvf memcached-1.4.5.tar.gz
cd memcached-1.4.5
./configure --prefix=/usr/memcache --with-libevent=/usr
make
make install
Memcached支持线程模式工作
在安装的时候必须打开:./configure --enable-threads 安装完之后,启动的时候看看帮助信息有没有这条: -t <num> number of threads to use, default 4
如果存在该选项,说明已经支持了线程,就可以在启动的时候使用 -t 选项来启动多线程,然后启动的时候必须加上你需要支持的线程数量:/usr/local/memcache/bin/memcached -t 1024
启动:
./memcached -d -u root -m 100 -c 100 -l 192.168.129.74 -p 12001 -P /tmp/memcached1.pid -vv
./memcached -d -u root -m 100 -c 100 -l 192.168.129.74 -p 12002 -P /tmp/memcached2.pid -vv
./memcached -d -u root -m 100 -c 100 -l 192.168.129.74 -p 12003 -P /tmp/memcached3.pid -vv
参数说明:
-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,这里是200MB
-u是运行Memcache的用户,我这里是root
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.1.91
-p是设置Memcache监听的端口,我这里设置了12000,最好是1024以上的端口
-c选项是最大运行的并发连接数,默认是1024,我这里设置了256
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid
-vv用very vrebose模式启动,调试信息和错误输出到控制台