多服务器session共享之memcache(d)共享

为了使多服务器共享SESSION,最简单的方法是将它们的SESSION保存在它们所链接的Memcached服务器上。

目前我所使用的memcache PECL 版本中,可以直接设置 php.ini 来设定自己的 session.save_handler,大致如下:

或者,你也可以在需要链接Memcached服务器的web程序头文件中使用如下类似的代码:

其中,将192.168.1.1替换成你的Memcached服务器的IP地址,11211替换成Memcached服务器监听的端口号(默认是11211)。

这样,只要提供sessionID,就可从Memcached服务器中取出该sessionID所存储的session信息了。

示例:

 

 

如果感兴趣,也可以编写自己的Memcached 保存Session的机制。以下是在网络上找到的参考实例:

然后,在项目程序的头文件中直接包含 MemacheSession.inc.php 即可,并且以前的程序不用做任何改动。

发表评论