Memcached安装指南(linux)
1、启用虚拟机。
路径:G:/Virtual Machines/VMware.Memcached
配置SecureCRT:CJB.Memcached 192.168.160.129
2、下载程序。
#cd /home/apps#wget http://www.monkey.org/~provos/libevent-1.4.13-stable.tar.gz
#wget http://www.danga.com/memcached/dist/memcached-1.4.0.tar.gz
3、编译器检查。#gcc -v
4、安装。
1)、安装libevent。
#tar -zxvf libevent-1.4.13-stable.tar.gz //先解压缩
#cd libevent-1.4.13-stable //切换到libevent的目录中
#./configure --prefix=/usr/ //指定安装路径到/usr/目录下
#make //编译
#make install //安装
#ls /usr/lib |grep libevent //验证安装
2)、安装memcached
#cd /home/apps
#tar -zxvf memcached-1.4.0.tar.gz
#cd memcached-1.4.0
#./configure --prefix=/usr/local/memcached --with-libevent=/usr/
#make #make install
#ls -al /usr/local/memcached/bin //验证安装
5、启动memcache1)、关闭防火墙。
#永久性生效,重启后不会复原
开启: chkconfig iptables on
关闭: chkconfig iptables off
#即时生效,重启后复原
开启: service iptables start
关闭: service iptables stop
#修改/etc/sysconfig/iptables文件,
添加-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 11211 -j ACCEPT
2)、启动Memcache的服务器端。
# /usr/local/memcached/bin/memcached -d -m 100 -u root -l 192.168.160.129 -p 11211 -c 256 -P /tmp/memcached.pid
-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是100MB,
-u是运行Memcache的用户,我这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.36.200,
-p是设置Memcache监听的端口,我这里设置了11211,最好是1024以上的端口,我们这里统一使用11211-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定。
-P是设置保存Memcache的pid文件,我这里是保存在/tmp/memcached.pid
3)、结束Memcache进程。
# kill cat /tmp/memcached.pid
6、 监测是否启动成功方式
cmd
c:/>telnet 192.168.160.129 11211
直接敲击stats命令
7、 设定memcache的telnet访问限制
请限定telnet的访问,使之只能在中转机上访问
8、 memcache的常见概念
memcached会预先分配内存,memcached分配内存方式称之为allocator,首先,这里有3个概念: 1 slab 2 page 3 chunk 解释一下,一般来说一个memcahced进程会预先将自己划分为若干个slab,每个slab下又有若干个page,每个page下又有多 个chunk,如果我们把这3个咚咚看作是object得话,这是两个一对多得关系。再一般来说,slab得数量是有限得,几个,十几个,或者几十个,这 个跟进程配置得内存有关。而每个slab下得page默认情况是1m,也就是说如果一个slab占用100m得内存得话,那么默认情况下这个slab所拥 有得page得个数就是100,而chunk就是我们得数据存放得最终地方
9、 Memcache的常用命令
1)、查询状态命令:stats:
2)、查询版本号 version
3)、退出命令 quit
3)、清空缓存数据(其实是将所有缓存数据标记为过期):flush_all
参考资料:
#memcached
http://memcached.org/http://code.jellycan.com/memcached/
#Memcached安装和基本使用(windows)
http://www.cnblogs.com/netflu/archive/2010/03/12/1684305.html
#memcache简要安装步骤
http://kb.cnblogs.com/a/1575049/
#Memcached linux安装说明
http://kb.cnblogs.com/a/1501326/
PHP 扩展
安装Memcache的PHP扩展(如果不使用PHP此步可以不用做)
1.在http://pecl.php.net/package/memcache 选择相应想要下载的memcache版本。
2.安装PHP的memcache扩展
tar vxzf memcache-2.2.1.tgz
cd memcache-2.2.1
/usr/local/php/bin/phpize
./configure –enable-memcache –with-php-config=/usr/local/php/bin/php-config –with-zlib-dir
make
make install
3.上述安装完后会有类似这样的提示:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/
4.把php.ini中的extension_dir = “./”修改为
extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/”
5.添加一行来载入memcache扩展:extension=memcache.so
3.重启apache,service httpd restart
Memcache环境测试:
运行下面的php文件,如果有输出This is a test!,就表示环境搭建成功。开始领略Memcache的魅力把!
< ?php
$mem = new Memcache;
$mem->connect(”127.0.0.1″, 11211);
$mem->set(’key’, ‘This is a test!’, 0, 60);
$val = $mem->get(’key’);
echo $val;
?>
我启动我的memcache的命令是:
./memcached -d -m 64 -u root -l 10.1.2.135 -p 11211 -c 256 -P /tmp/memcached.pid
./memcached -d -m 64 -u root -l 10.1.2.135 -p 11212 -c 256 -P /tmp/memcached.pid
./memcached -d -m 64 -u root -l 10.1.2.135 -p 11213 -c 256 -P /tmp/memcached.pid
其中10..1.2.135为memcache所在的服务器的地址,可以同时启动多个mem的守护进程缓存数据,但是端口号是不能相同的。
我安装memcache时也遇到了一个问题:
/usr/local/memcached/bin/memcached: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory
主要是看最后一行提示的错误,那么我们:
以下是代码片段:
ln -s /usr/local/lib/libevent-1.4.so.2 /usr/lib/libevent-1.4.so.2
ldconfig
之后再次运行就可以了