我们正在用PHP开发一个网站,我们必须使用会话。该站点将在服务器群集中发布。我们怎样才能做到这一点?
感谢。
答案 0 :(得分:3)
是的,这是可能的,您需要将会话存储在像数据库这样的中心位置。这非常简单,只需要您对session_set_save_handler进行一些更改 - 您需要遵循here
的流程的一个很好的示例答案 1 :(得分:1)
我会使用memcache来存储你的会话。它比将它们存储在数据库或磁盘中要快得多。
数据库存储很好,但当您的网站流量非常高时,您将需要更多数据库。当您的网站获得大量流量时,磁盘上的会话也会导致很多IO问题。另一方面,Memcache比DB和文件更好地扩展。
我个人使用memecache和我工作的网站每天获得数百万次点击。我在memcache中存储会话时从未遇到任何问题。
答案 2 :(得分:0)
会话目录的共享NFS挂载是一个选项,但我总是发现nfs性能有点慢。替代方法是使用memcache或数据库为会话编写自己的会话处理程序。
另一种选择是使用sticky sessions对您的Web服务器进行负载平衡,这将确保来自同一客户端的请求始终在会话过程中转到同一服务器。
答案 3 :(得分:0)
如果您有多个PHP框,则需要一个中央会话存储。
您最好的选择可能是数据库(来自sawgee答案的链接是一个很好的解释)或专用的memcache框。