我正在编写一个全新的网站,如果我必须使用负载均衡器在多台计算机上托管网站,我想确保它能够轻松扩展。
可以对网站的用户进行身份验证。换句话说,我需要维护一些状态信息。我的第一个 react 是使用 Session 变量,但随后我将被限制在一台机器上。我知道有一些方法可以将 session 变量存储在外部(在 DB、redis、memcached 中),但这是唯一的选择吗?
session 变量的替代方案是什么? Facebook 和其他大型网站是如何做到这一点的?
附言我不是在寻找另一个 session 处理程序(DB、redis 等)。我想知道是否有办法完全摆脱 session 变量。
最佳答案
听说过 session_set_save_handler ?它允许您使用默认 PHP session 处理程序以外的机制(在 tmp 目录中写入 sess_xxxxxxxxxxxx 文件的机制)。
您可以编写自己的使用数据库的 session 处理程序。这可能是一项耗时的任务;因此您可以暂时坚持使用默认的 PHP session 处理程序,并在准备就绪时透明地切换到数据库。除了实现和插入您的六个 session 处理函数版本之外,您可能不必重写任何代码。
关于php - PHP session 变量的替代方案是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9177866/