1. memcache简介
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。
memcache有memcache和memcached两种名称,其实memcache是这个项目的名称,而memcached是它服务器端的主程序文件名。
memcached是一种服务器,是内存缓存服务器,就像apache服务器一样。只不过apache是用来提供web服务,而memcached是用来进行内存缓存。那么memcache客户端呢?我们可能用php开发网站,也可能用java或者python,这些相对与服务器来说是客户,都在使用服务器的服务。
在php的扩展中加入memcache,就可以调用服务器的服务了,就是可以调用memcached来进行内存缓存了。
2. 下载安装memcached服务端
1、下载memcahed,wget http://www.memcached.org/files/memcached-1.5.1.tar.gz
2、解压源码,tar -xvf memcached-1.5.1.tar.gz
3、编译安装,cd memcached-1.5.1
,./configure
,make && make install
3. 启动memcached服务端
1、memcached的默认目录为/usr/local/bin/memcached
2、启动memcache,memcached -u root -d
- -d 选项是启动一个守护进程。
- -m 是分配给Memcache使用的内存数量,单位是MB,默认64MB。
- -u 是运行Memcache的用户,如果当前为root 的话,需要使用此参数指定用户
- -p [num]是设置Memcache的TCP监听的端口,最好是1024以上的端口。
- -c 选项是最大运行的并发连接数,默认是1024。
- -P [file] 是设置保存Memcache的pid文件。
或者,service memcached start
3、验证安装结果,memcached -h
4、设置开机启动,chkconfig memcached on
5、查看监听端口,yum install lsof
,lsof -i tcp:11211
4. php安装memcache
4.1. 安装libmemcached
1、下载wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
2、解压tar -xvf libmemcached-1.0.18.tar.gz
3、编译安装到/usr/local/libmemcachedcd libmemcached-1.0.18
./configure --prefix=/usr/local/libmemcached
make && make install
4.2. 安装memcached的PHP扩展
1、下载wget https://pecl.php.net/get/memcached-2.2.0.tgz
2、解压tar -xvf memcached-2.2.0.tgz
3、生成配置文件cd memcached-2.2.0
/usr/local/php/bin/phpize
4、编译安装./configure --enable-memcached --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --disable-memcached-sasl
make && make install
5、修改php.ini,添加 extension = "memcached.so"
6、验证安装结果,/usr/local/php/bin/php -m | grep memcache
,如果出现memcached,则证明安装成功。
7、重启php-fpm,service php-fpm restart
8、访问 http://host_ip/p.php
,ctrl+f,查找memcache,如果能找到memcache,则证明成功启动。
5. 测试
1、在web目录下,新建mem.php,内容如下:
1 |
|
2、访问 http://host_ip/mem.php
,即可看到“hello memcached!”。至此,memcache安装配置成功!