我有一个 Web 应用程序,其中 Cookie 和会话都很重要。
由于 Web 应用程序在不同的服务器上进行负载平衡,我正在寻找替代存储的建议,以获取所有服务器都能够访问的会话数据。
有些会话可能长达数天。
我想到的解决方案:
- 本机 PHP 会话(这是我想停止使用的会话)
- MySQL 数据库
- 序列化并写入文件(为了表演,我想避免这种情况)
- Memcache(但它可能会变得非常大或旧数据被淘汰)
提前致谢!
我有一个 Web 应用程序,其中 Cookie 和会话都很重要。
由于 Web 应用程序在不同的服务器上进行负载平衡,我正在寻找替代存储的建议,以获取所有服务器都能够访问的会话数据。
有些会话可能长达数天。
我想到的解决方案:
提前致谢!
您可以使用像 Couchbase 或 Redis 这样的无 sql 数据库,这与使用 Memcache 类似,但是它们都具有硬盘持久性,而 Memcache 只是内存中的缓存,因此您会遇到在 Memcache 运行时旧数据可能会丢失的问题到它的极限。
我会使用数据库作为替代方案。我过去使用过它,它对我来说效果很好。在选择一个数据库来完成这项任务时,我会选择一个已经是基础设施的一部分并且我知道的数据库。换句话说,如果您还不熟悉 NoSQL 数据库,我不建议您使用它。我过去曾使用 MySQL 和 Oracle 作为会话存储,它们对我来说是零麻烦的。
但话又说回来,如果你对 NoSQL 感到满意,或者想学习它们,你可能会朝那个方向发展。底线 - 我会坚持使用我知道的数据库作为备用 PHP 会话存储。