java - Tomcat session 复制 + Spring bean

标签 java spring spring-mvc cluster-computing

我有一个 Spring bean,它将用于存储用户详细信息或任何其他相关信息。 我将此 bean 存储在 session 级别。

<bean id="userSession" class="com.test.SessionImpl" scope="session">
<aop:scoped-proxy/>
</bean> 

现在我的服务器很少,我想使用 SimpleTcpCluster 构建具有 session 复制的集群。

当我更新集群节点之一上的 bean 时,它会被复制到其他节点吗? 我对此感到担忧,因为该 bean 驻留在 session 级别,但不在 session 本身中。如果我错了请纠正我。

最佳答案

只要 Tomcat 可以复制该对象(即该对象是可序列化的),那么该 bean 就会被复制。它作为 session 的属性存储——您可以在调试器中或通过在代码中迭代 session 的属性来验证这一点。

spring文档(http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/beans.html#beans-factory-scopes-session)暗示情况就是如此但没有明确具体的机制。

关于java - Tomcat session 复制 + Spring bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4782987/

相关文章:

Java:为什么我们从 Pattern 中获取 Matcher

java - 有什么方法可以直接进入Android中的 "Enable Usb Debugging"页面?

java - 无法加载驱动程序类 : com. mysql.jdbc.Driver Spring

java - Spring Webflux 是否在每个请求的单个线程中调用单个 HandlerFunction?

java - spring 模型对象未在 jsp 页面上呈现

java - 如何防止用户重复输入 (Java)

Java 正则表达式和多行

java - 缓存驱逐在没有 key 的情况下不起作用,并且方法没有参数?

java - Spring mvc 绑定(bind)错误国际化

java - Spring MVC,两个按钮与一个表单一起工作,它们如何协同工作?