金蝶Apusic应用服务器6.0集群对第三方的负载均衡(如:硬件负载均衡器F5,软件负载均衡器Apache Server,微软的IIS等)提供良好的支持,用户只需要简单配置就可以使第三方的负载均衡器与金蝶Apusic应用服务器6.0无缝结合在一起。
当采用第三方负载均衡器时,金蝶Apusic应用服务器6.0同样采用内存复制技术,与Apusic LoadBalancer不同的是,我们已经不能用第三方负载均衡器来备份状态,因此,采用了使用IP多播技术,通过IP多播和Java序列化/反序列化技术在集群中的金蝶Apusic应用服务器实例之间进行内存复制,这时候,需要开启金蝶Apusic应用服务器6.0的集群服务。Apusic集群支持两种Session复制策略:多点复制,配对复制,用户可以根据自己的需要选择不同的复制策略。默认情况下为配对复制。
为了使用集群,需要在DOMAIN_HOME\config\apusic.conf中配置服务ClusterService,示例如下:
<SERVICE CLASS="com.apusic.cluster.ClusterService">
<ATTRIBUTE NAME="ClusterName" VALUE="ApusicCluster"/>
<ATTRIBUTE NAME="LoadWeight" VALUE="100"/>
<ATTRIBUTE NAME="ServerName" VALUE="$DOMAIN_NAME"/>
</SERVICE>其中属性ClusterName为集群的名称,多个节点如果想加入到同一个集群中,ClusterName必须相同。ServerName为当前节点的名称,必须唯一,如果存在相同名称的节点,则后加入的节点会加不到集群中。默认的ServerName为当前Domain的名称。
同时,需要设定SessionService的Distributable和Replicable属性为True,示例如下:
<SERVICE CLASS="com.apusic.servlet.http.session.SessionService">
<ATTRIBUTE NAME="DefaultSessionTimeout" VALUE="3600"/>
<ATTRIBUTE NAME="MaxSessionsInCache" VALUE="1024"/>
<ATTRIBUTE NAME="SessionInvalidateCheckInterval" VALUE="60"/>
<ATTRIBUTE NAME="Distributable" VALUE="True"/>
<ATTRIBUTE NAME="Replicable" VALUE="True"/>
<ATTRIBUTE NAME="SessionStick" VALUE="True"/>
</SERVICE>![]() | 注意 |
|---|---|
在linux下以上配置都正确的情况下,出现节点不能正确加入集群,请设置etc/hosts文件的地址为局域网内部地址。 |
由于金蝶Apusic应用服务器默认Session复制策略为配对复制的,如果用户想使用Session多点复制,需要设定ClusterService的配置属性:
<ATTRIBUTE NAME="ReplicationPolicy" VALUE="all"/> <!-- ReplicationPolicy默认为"pair",即配对复制。-->
在使用Session配对复制时,用户可以通过管理控制台,设置节点配对。也可以手动在 ClusterService中增加属性SlaveServerName来指定其备份服务器,如下:
<ATTRIBUTE NAME="SlaveServerName" VALUE="serverName"/>
其中value值为其他节点的ServerName。