gpt4 book ai didi

php - 处理多个主机上的 PHP 站点 session 的最佳方法是什么?

转载 作者:IT老高 更新时间:2023-10-28 23:49:59 26 4
gpt4 key购买 nike

PHP 将其 session 信息存储在建立该 session 的服务器主机的文件系统中。在多主机 PHP 环境中,负载不智能地分布在每个主机之间,PHP session 变量不可用于每个请求(除非偶然将请求分配给同一主机 - 假设我们无法控制负载均衡器) .

This site, dubbed "The Hitchhikers Guide to PHP Load Balancing"建议覆盖 PHP session 处理程序并将 session 信息存储在共享数据库中。

在您看来,在多 PHP 主机环境中维护 session 信息的最佳方法是什么?

更新:感谢您的反馈。对于任何寻找示例代码的人,我们找到了 useful tutorial on writing a Session Manager class for MySQL我建议检查一下。

最佳答案

数据库,或数据库+内存缓存。一般来说, session ​​不应经常写入。从仅在 session 数据发生更改时才写入数据库的数据库解决方案开始。稍后应添加 Memcache 作为性能增强。数据库解决方案将非常快,因为您只需要查找主键。确保数据库具有行锁定,而不是表锁定(myISAM)。 MemCache only 是个坏主意...如果它溢出、崩溃或重新启动,用户将被注销。

关于php - 处理多个主机上的 PHP 站点 session 的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76712/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com