星火燎原

千日修以返初心 万日炼以达极致

导航

Linux环境下Apache反向代理金蝶中间件Apusic集群

操作系统:RedHat Enterprise Linux 5.6

文档参考:《金蝶Apusic应用服务器 帮助手册| IX. Apusic Http Server使用指南》

 

一、金蝶中间件配置

金蝶中间件需要修改的是集群环境中所有节点域中的apusic.conf和vm.options两个配置文件。

1、apusic.conf配置文件修改

配置高可用性

<SERVICE CLASS="com.apusic.cluster.ClusterService">
    <ATTRIBUTE NAME="ClusterName" VALUE="ApusicCluster"/>
    <ATTRIBUTE NAME="ReplicationPolicy" VALUE="ALL"/>
    <ATTRIBUTE NAME="LoadWeight" VALUE="100"/>
    <ATTRIBUTE NAME="ServerName" VALUE="node1"/>
</SERVICE>

其中属性ClusterName为集群的名称,多个节点如果想加入到同一个集群中,ClusterName必须相同。ServerName为当前节点的名称,必须唯一,如果存在相同名称的节点,则后加入的节点会加不到集群中。

由于Apusic默认Session复制策略为配对复制的,如果用户想使用Session多点复制,需要设定ClusterService的配置属性:

<ATTRIBUTE NAME="ReplicationPolicy" VALUE="all"/> <!-- ReplicationPolicy默认为"pair",即配对复制。—>
 

配置会话:

<SERVICE CLASS="com.apusic.web.session.SessionService">
    <ATTRIBUTE NAME="DefaultSessionTimeout" VALUE="3600"/>
    <ATTRIBUTE NAME="MaxSessionsInCache" VALUE="10240"/>
    <ATTRIBUTE NAME="SessionInvalidateCheckInterval" VALUE="60"/>
    <ATTRIBUTE NAME="Distributable" VALUE="True"/>
    <ATTRIBUTE NAME="Replicable" VALUE="True"/>
    <ATTRIBUTE NAME="SessionStick" VALUE="True"/>
    <ATTRIBUTE NAME="PersisteSession" VALUE="False"/>
    <ATTRIBUTE NAME="DestorySessionOnApplicationStop" VALUE="True"/>
</SERVICE>

需要设定SessionService的Distributable和Replicable属性为True。

当用户想使用Session Stick时,SessionStick值需要设置为True。

 

2、配置vm.options

在该配置文件最后添加如下内容:

apusic.redirect.proxy=true
com.apusic.jvm.route=node1

 

二、Apache2配置

确保Apache已经加载如下module

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_http_module modules/mod_proxy_http.so

在httpd.conf中增加配置:

<VirtualHost *:80>
ProxyRequests off
ProxyPass / balancer://proxy/  stickysession=JSESSIONID  nofailover=off
<Proxy balancer://proxy>
BalancerMember http://192.168.101.100:6060/  loadfactor=1 route=node1
BalancerMember http://192.168.101.100:8080/  loadfactor=1 route=node2
</Proxy>
</VirtualHost>

其中80端口是用户安装时配置的http协议监听端口,确认是否为80端口,可以查看配置文件中的Listen 选项。BalancerMember为后置机节点,后面的值为后置机的地址和端口。Loadfactor为负载权重。

当用户想使用会话粘滞(Session-Stick),可以在ProxyPass/balancer://test/后面加入stickysession=JSESSIONID,同时在每个BalancerMember最后面加入route=RouteName; 若用户想使用失效转移时还要在后面加入nofailover=off

posted on 2018-11-09 11:53  xusweeter  阅读(1712)  评论(0编辑  收藏  举报