如果我正在运行两个以上的服务器实例(使用rackspace-cloud的ip组),我如何使用PHP管理我的会话?
有没有办法让用户“粘”到他们最初登录的服务器上?我确实使用memcached,但所有的云系统都有memcached,我需要确保用户会话到达正确的服务器。
我不希望出现单点故障。
发布于 2010-07-17 09:47:30
使用文件以外的其他文件进行会话管理。PHP允许您覆盖处理程序。我使用memcache。它也有一个PECL扩展:http://www.dotdeb.org/2008/08/25/storing-your-php-sessions-using-memcached/
这是另一篇关于它的文章:http://www.ducea.com/2009/06/02/php-sessions-in-memcached/
更新
要解决评论中的问题,请执行以下操作:
这允许您使用一组中央memcache机器进行会话。它将查找您定义的中央memcache集群,而不是每个服务器都在本地查找其文件系统。
memcache集群可以是任意多台机器,以避免单点故障。以下是来自php.ini的示例配置:
memcache memcache.allow_failover =1 memcache.redundancy =1 memcache.session_redundancy =2;使用memcache作为会话处理程序session.save_handler =memcache;使用逗号分隔的服务器urls列表进行存储:memcache
https://stackoverflow.com/questions/3269829
复制相似问题