我的webapp部署在多个JBoss实例的集群中。 webapp中有一个管理页面,用于执行某些特定于Jboss实例的操作。
问题是请求被发送到负载均衡器而不是直接命中特定的单个实例。
有没有办法将请求定向到特定实例?或者至少在管理页面启动时,所有后续请求(Ajax)将坚持在开头为该页面提供服务的原始实例。
我认为HttpSession不会在这里提供帮助。我需要针对特定实例而不是维护个人客户端的状态。
感谢。
答案 0 :(得分:0)
您正在寻找如何配置Sticky会话。
将用户会话中的所有请求始终发送到称为持久性或粘性的同一后端服务器。这种技术的一个重要缺点是缺乏自动故障转移:如果后端服务器出现故障,其每会话信息将无法访问,并且任何依赖于它的会话都将丢失。同样的问题通常与中央数据库服务器有关;即使Web服务器是“无状态”而不是“粘性”。
对特定服务器的分配可能基于用户名,客户端IP地址或随机分配。虽然这些方法有优点和缺点。
我建议请仔细阅读以下文章,在集群中配置JBoss,而不是深入了解,除非你想深入了解。
http://docs.jboss.org/jbossas/docs/Clustering_Guide/beta422/html/clustering-http-nodes.html