用开源软件简单实现的java website cluster结构

[img]http://lokki.iteye.com/upload/picture/pic/9196/8d6df944-2bf0-30c8-b73b-b3ab4e6d95d8.png[/img]
见上图,用开源软件简单实现的java website cluster结构。这个结构其实是很简易试验的,其中在apache和tomcat这部分,只要熟读tomcat cluster和mod_jk的文档后,并且你是懂得用httpd.conf的话,只要花1,2天的时间就可试验,并用一小jsp程序进行试验。
同时,即使用不上完整和大型cluster结构,同一server 硬件内进行单apache+双tomcat的运行结构对小型系统的生产运行环境也是有好处的:
更新application classes/lib时,可先停掉一个tomcat,将现时登录用户无缝切换至另一tomcat服务,更新停掉tomcat的classes/lib代码后重新投入服务,再停掉另一tomcat更新代码。tomcat的SimpleTcpCluster其实只是实现简单的在各tomcat间序列化session复制机制,而各tomcat内部还是独立运行的,如果session中变量代码不发生变化的话,问题不大。而用户是感觉不到后台tomcat的切换,对用户来说服务没有停止。这种结构可以处理大部分tomcat需要停止而不希望停止用户服务的问题。
注意: 最新版本的mod_jk的配置格式和旧版本(现在网络上搜索到大多数还是旧配置格式)是不同的,建议直接看mod_jk文档。

以下是简单配置提示:
(1)直接下载tomcat/httpd版本对应的mod_jk.so

(2)httpd.conf中加入:
LoadModule jk_module modules/mod_jk.so

JkWorkersFile /home/apache/conf/workers.properties
JkShmFile /home/apache/logs/mod_jk.shm
JkLogFile /home/apache/logs/mod_jk.log
JkLogLevel info
JkMount /*.jsp lb
JkMount /jkstatus/* jkstatus

(2)workers.properties配置:
worker.list=lb, jkstatus
worker.lb.type=lb
worker.lb.balance_workers=tomcat01, tomcat02

worker.jkstatus.type=status

worker.tomcat01.type=ajp13
worker.tomcat01.host=localhost
worker.tomcat01.port=8009

worker.tomcat02.type=ajp13
worker.tomcat02.host=localhost
worker.tomcat02.port=9009

(3)tomcat01/tomcat02的server.xml中配置jvmRoute、AJP端口、Cluster:
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat01">

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>

(4)cluster application web.xml中配置:
<distributable />

btw: javaeye blog显示将unix下的CRLF显示成两行回车换行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值