php如何配置memcache

不言
不言asal
2018-06-11 13:39:271503semak imbas

这篇文章主要介绍了关于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 12000Trying 127.0.0.1...Connected to 127.0.0.1.
Escape character is '^]'.
set a 0 0 41234STORED
get a
VALUE a 0 41234END
^C
quit

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

3. memcache的安装和测试

wget -c http://pecl.php.net/get/memcache-3.0.8.tgztar zxvf memcache-3.0.8.tgz
phpize && ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-configmake && 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(&#39;localhost&#39;, 12000);
if ($memcache) {    
$memcache->set("key1", "String");    
$memcache->set("key2", 123);    
$object = new StdClass;   
$object->attribute = &#39;test&#39;;    
$memcache->set(&#39;key3&#39;, $object);

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

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

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

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

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

4. memcached的安装和测试

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

yum -y install libmemcached.x86_64

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

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

关于php中的递归分析

Atas ialah kandungan terperinci php如何配置memcache. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn