我正在努力完全理解何时/如何使用CloudBees的application session stores概念。
阅读完那篇文章之后,我对它们的理解就是它们提供了一种让appserver的多个实例共享持久会话变量的方法。这样,您可以在每个服务器之间进行负载平衡,并且用户重定向到哪个实例并不重要;每个服务器实例具有相同的共享会话状态(适用于所有用户)。
首先,如果我的理解不正确或有点误导,请先纠正我!
假设我或多或少是正确的,那么我有以下问题:
提前致谢!
答案 0 :(得分:1)
会话存储允许您在群集周围复制HttpSession,以便您可以在多个实例上扩展应用程序负载,而无需将用户粘贴到特定服务器(这是您可以使用的另一个选项:configure {{ 3}})
本质上,序列化HttpSession数据会对性能产生一些影响,但是因为它使用了一个memcache后端,所以这是最小的。这主要取决于您在用户会话中存储的对象的数量和大小。另外,请注意这需要您在任何属性更改后明确地将对象放入HttpSession中,甚至从会话中检索对象 - 这是JavaEE群集的一般API问题。
您无法以编程方式查询会话存储(可以使用足够的内存缓存客户端代码,但这没有多大意义)
两个具体用例