php 配置memcache

1. memcache概念

首先我们必须要区别三个概念: Memcached, memcache 和memcached.
1. 其中Memcached指的是Memcached服务器,就是独立运行的Memcached后台服务器,就像mysqld一样,它是用来存储数据的键值对”数据库”.
2. 而memcached和memcache都是Memcached的客户端,可以通过他们来访问连接Memcached服务器.他们都是php的插件.对于两个的区别,是一个老话题了,可以参考其他文章的说法.个人感觉memcached更好些,毕竟功能多,而且是基于libmemcached的扩展.

2. Memcached服务器安装和测试

如果是fedora的话,内置源就有memcached,可以直接用yum安装

yum -y install memcached.x86_64

安装好后,开启后台进程.

 memcached -d -m 10 -u user -l 127.0.0.1 -p 12000 -c 256 -P /tmp/memcached.pid

其中-d表示开启后台服务进程,-m表示最大使用10m内存,-u表示当前用户,-l表示ip地址,-p表示端口号,-c表示最大的并发连接数,-P表示pid文件的位置.其他参数可以直接man memcached查询.

现在可以用telnet测试下memcached的开启情况.

telnet 127.0.0.1 12000
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
set a 0 0 4
1234
STORED
get a
VALUE a 0 4
1234
END
^C
quit

上面消息表示Memcached服务器安装成功.

3. memcache的安装和测试

wget -c http://pecl.php.net/get/memcache-3.0.8.tgz
tar zxvf memcache-3.0.8.tgz
phpize && ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config
make && make install

这样下面会出现一行Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
这样so文件就生成了,然后在php.ini文件中导入这个模块就行.

extension_dir=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
extension=memcache.so

然后重启php-fpm加载php.ini,查看phpinfo如果看到memcached则表示模块安装成功.有时可能出现php.ini未加载的情况.可以强制php-fpm加载该ini文件.

php-fpm -c /usr/local/php/lib/php.ini

在php文件中测试memcached.

<?php

$memcache = memcache_connect('localhost', 12000);

if ($memcache) {
    $memcache->set("key1", "String");
    $memcache->set("key2", 123);

    $object = new StdClass;
    $object->attribute = 'test';
    $memcache->set('key3', $object);

    var_dump($memcache->get('key1'));
    var_dump($memcache->get('key2'));
    var_dump($memcache->get('key3'));
} else {
    echo "Connection to memcached failed";
}
?>

浏览器访问即可知道是否成功访问.

在memcache中有一个叫memcache.php的文件,可以查看memcache服务器的运行状况.
修改memcache.php文件.

#$MEMCACHE_SERVERS[] = 'mymemcache-server1:11211'; // add more as an array
#$MEMCACHE_SERVERS[] = 'mymemcache-server2:11211'; // add more as an array
$MEMCACHE_SERVERS[] = 'localhost:12000';

浏览器打开就可以看到memcached服务器的情况.

4. memcached的安装和测试

安装和memcache差不多,不过要先装libmemcached.

yum -y install libmemcached.x86_64

然后就按按照memcache的安装和测试方法就行.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值