如何使用 PHP 扩展 Memcached 的长连接模式,
我们知道 Memcache 有个 方法可以实现长连接,其实 Memcached 也可以实现持久化连接。
使用 PHP 扩展 Memcached 的长连接模式
Memcached 的扩展模块提供的构造函数提供一个参数 persistent_id
可选项,手册中这样介绍:
默认情况下,Memcached实例在请求结束后会被销毁。但可以在创建时通过persistent_id为每个实例指定唯一的ID, 在请求间共享实例。所有通过相同的persistent_id值创建的实例共享同一个连接。
这个参数的含义就是说如果传递了一个id给到构造方法,那么就会建立长连接:
<?php$mc = new Memcached('mc');$mc->addServers(array( array('mc1.example.com',11211), array('mc2.example.com',11211),));?>
PHP 扩展 Memcached 长连接模式的最佳实践
但需要注意的是当第一次通过建立起 Memcahced 长连接后,切记不要再重复添加 Memcached 的服务端,不然页面没刷新一次就会添加一次,该 persistent_id 下的 Memcached 服务器端就会越来越多,这样就会导致 PHP 的进程异常,与 Memcached 的通信越来越慢。所以使用 PHP Memcached 的长连接模式最佳实践是使用 getServerList() 方法是否已经添加了服务器端,如果没有添加再在进行添加服务器端的操作:
<?php$mc = new Memcached('mc');$mc->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLE, true);if (!count($mc->getServerList())) { $mc->addServers(array( array('mc1.example.com',11211), array('mc2.example.com',11211), ));}?>
插件已经集成了 Memcached,之后,将 wpjam-basic/template/
目录下的 object-cache.php
文件复制到 wp-content
目录下即可。
本站推荐使用的主机:,国外主机建议使用。
声明:本站所有文章和内容,如无特殊说明或标注,均为本站原创发布或者来源互联网投稿,内容仅限个人本地测试使用非商用,请于获取后24小时内删除,如若本站内容侵犯了原著者的合法权益,可联系我们进行删除处理。本站所有文章和软件均免费获取和阅读,本站不收取任何费用,但因内容和软件获取链接会占用本站资源,故会收取资源占用费用,用户若不同意支付费用可选择关闭网页。