MEMCACHE做为PHP的SESSION HANDLER_PHP教程
程序员文章站
2023-12-28 09:23:22
...
在为php安装了memcache模块后查看该模块的说明文件,发现他还可以直接作为php的session handler使用,而无需做做额外的编码处理。
设置方法很简单,只要修改php.ini中的以下键的值:
session.save_handler = memcache
session.save_path = 'tcp://192.168.0.1:11211'
#有多个时直接用","分隔即可
要测试一下是否真的用上了memcache,可以先获取使用的PHPSESSID,然后将其作为KEY用memcach去读一下,就知道了。
使用memcache做php的session handler好处
使用内存存放session信息,不经过磁盘,数据库等,速度快
可以多台机器共用一个/组memcached服务器,达到多台机器共享session信息,方便多机集群的session问题处理。
…
使用memcache做为php的session handler坏处
首先memcached的服务必须正常工作,否则php的session相关功能将不起作用,这样php的处理就多了一层外面的依赖。
由于memcached是使用内存的,这样当用户量比较大时,就可能由于内存方面原因导致session时长上的问题,session的实际失效时长达不到设定的失效时长(由于memcached在内存不够下的处理机制决定)
由于memcached的内存管理机制,当session存储的数据超过1MB的时候有数据丢失问题(不过一般不会有人在session中存放这么多的信息吧)。
…
根据以上的一些情况决定自己在实际环境中是否使用memcache做为php的session handler
推荐阅读
-
MEMCACHE做为PHP的SESSION HANDLER_PHP教程
-
windows+xampp+php5.4下安装memcache使用session的方法
-
PHP实现分布式memcache设置web集群session同步的方法
-
用PHP实现多服务器共享SESSION数据的方法_PHP教程
-
昨天写支付接口时遇到支付接口返回数据接收地址,session数据丢失(或者说失效)的问题,session数据丢失_PHP教程
-
php上的memcache和memcached两个pecl库_PHP教程
-
解决php中Cannot send session cache limiter 的问题的方法_PHP教程
-
Zend Framework实现将session存储在memcache中的方法_PHP
-
php中的session完全教程第1/2页
-
PHP中使用memcache存储session的三种配置方法