假设我们有一个面向性能的应用程序在集群中工作。它包含了很多用户。众所周知,会话复制得很差,因此应用程序可以很难扩展。当然最好的方法是创建应用程序为无状态。 (节点之间没有序列化) 但我的问题是:当我们决定将HttpSession保存在某些存储器中时,例如Redis或memcached?
您认为在某些nosql实例中保留HttpSession是一个好主意吗?
谢谢
答案 0 :(得分:1)
内存数据库有两个主要缺点:
所以问题是:你的会话数据有多重要?当您丢失用户的sesson数据时,要么是因为必须删除它以为更新的会话腾出空间,要么是因为必须重新启动数据库服务器,这意味着什么?他们只需要重新登录,还是会丢失有价值的数据?
请注意,还有memcacheDB,它就像memcached一样工作(字面意思是!它被设计用作替代品)但是备份磁盘上的所有数据。当数据丢失不可接受时,这是Memcached的一个很好的替代方案。