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
最新文章
- 使用 jQuery Ajax 在页面滚动时从服务器加载数据
- Sql判断不为Null也不为空的写法
- struts2使用Convention Plugin在weblogic上以war包部署时,找不到Action的解决办法
- struts2 学习路线
- spring security使用数据库管理用户权限
- SVN提交.a文件的方法
- mysql 批量创建表
- 关于js中立即执行的匿名函数写法
- 性能测试分享: Jmeter的源码分析main函数参数
- MySQL权限说明
- noip普及组2007 纪念品分组
- 【眼见为实】自己动手实践理解REPEATABLE READ &;&; Next-Key Lock
- 工作中常用的Linux命令
- Android OkHttp文件上传与下载的进度监听扩展
- Python基础:编码规范(4)
- StringRedisTemplate操作redis数据
- TOP排行新闻列表。
- C++ 保留有效小数 保留有效数字
- 【CJOJ2375】 【HZOI 2015】偏序 II(cdq分治,树状数组)
- Android 用java语言执行Shell命令
热门文章
- 【python】搜索引擎方面的资料
- onfocus事件,onblur事件;Focus()方法,Blur()方法
- javascript/jquery模板引擎——Handlebars初体验
- Spring MVC @ResponseBody响应中文乱码
- JAVA学习(七):方法重载与方法重写、thiskeyword和superkeyword
- 百度Fex webuploader.js上传大文件失败
- Webapp兼容性布局
- 我要开启vue2新征程。
- 【bzoj2809】[Apio2012]dispatching (左偏树)
- Koa2学习(一)环境搭建