1.前言
2.集群准备知识
3.Jboss集群安装实例概述
4.Jboss集群负载均衡器配置
5.Jboss集群节点配置
6.启动Jboss集群
7.Jboss集群session复制
jboss session复制是jboss session同步的一种实现。原理是在各Jboss节点间建立横向联系,每个节点都将本节点的session变化同步到其他所有节点上。
jboss的session复制与HTTP集群是相互配合、相互独立的两个系统。session复制是节点间的横向联系,HTTP集群是负载均衡器与节点的纵向联系。
vi /usr/local/jboss/server/all/deploy/tc5-cluster.sar/META-INF/jboss-service.xml
找到<config><udp,将><config>到</config>全部注释掉.
jboss session复制有UDP和TCP两种方式.UDP采用多播方式,但问题比较多,所以Ruby Sun 采用TCP方式。
找到<config> <tcp,将><config>到</config>生效.并对该部分进行以下修改:
其他参数还包括:
ClusterName 是集群名称,比如partition1.
在同一局域网内,可以存在多个jboss集群,根据集群名称区分它们.所以,集群中各节点配置的集群名称必须一致,而机器IP则没有特殊要求,只要它们能 相互连通. 理论上,可以在一台机器上安装多个Jboss实例,分属于不同的集群.但这会极大地增加复杂度,是不好的配置方式.Ruby Sun 严重不建议给自己找麻烦。
IsolationLevel 是隔离等级.
可选值包括:SERIALIZABLE, REPEATABLE_READ, READ_COMMITTED, READ_UNCOMMITTED, 和 NONE。这里的隔离级别和数据库的隔离级别有同样的含义,对于大多数WEB应用程序来讲通常设置为REPEATABLE_READ。
CacheMode 是缓存模式。
由于session复制是通过缓存实现的,所以实际上是复制模式.可选值包括:REPL_SYNC 和REPL_ASYNC,确定改变是应该同步还是异步复制。缺省值是REPL_ASYNC.使用同步复制,确保在请求完成之前传播改变,session同 步没有滞后,但效率低。
在应用程序的web.xml的<web-app>段中增加<distributable />。
在jboss-web.xml中增加以下内容:
< jboss-web >
< replication-config >
< replication-trigger > SET_AND_NON_PRIMITIVE_GET </ replication-trigger >
< replication-granularity > SESSION </ replication-granularity >
< replication-field-batch-mode >
jboss4集群配置至此结束。