多个项目,放在独立的tomcat上,并没有实现负载,要求实现静态化交给apache处理。
配置了3个tomcat通过jk和apache建立关系:
- tom1存放项目名:d1
- tom2存放项目名:news
- tom3存放项目名:root
环境:(一台win2003服务器,,zip版本5.5.26的tomcat装了3个,,jk是1.2.26的,apache2.2.?)
我的实现方式:
每个tomcat根目录下写个bat脚本,用于同一个机器上启动多个tomcat
D:\Program\Tomcat5.5.26\startup_proname.bat
set CATALINA_HOME=D:\Program\Tomcat5.5.26
bin/startup.bat
(此处只写一个tomcat的配置server.xml就不多说了,其他的也如此)
贴出我的配置文件,一共5个:
- mod_jk
- workers2.properties
- uriworkermap-d1.properties
- uriworkermap-news.properties
- uriworkermap-root.properties
mod_jk
# Load mod_jk module. Specify the filenameof the mod_jk lib you’ve downloaded and
installed in the previous section
#加载mod_jk模块
LoadModule jk_module modules/mod_jk.soWhere to find workers.properties
JkWorkersFile conf/workers2.properties
Where to find uriworkermap.properties
JkMountFile conf/uriworkermap-root.properties
JkMountFile conf/uriworkermap-news.properties
JkMountFile conf/uriworkermap-d1.propertiesWhere to put jk logs
JkLogFile logs/mod_jk.log
Set the jk log level [debug/error/info]
JkLogLevel info
Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"
#关掉主机Lookup,如果为on,很影响性能,可以有10多秒钟的延迟。
HostnameLookups Off
workers2.properties
worker.list=root-loadbalancer,news-loadbalancer,d1-loadbalancer#主工程
worker.root.type=ajp13
worker.root.host=localhost
worker.root.port=9009
worker.root.lbfactor=1worker.root-loadbalancer.type=lb
worker.root-loadbalancer.balance_workers=root#新闻工程(news)
worker.news.type=ajp13
worker.news.host=localhost
worker.news.port=9019
worker.news.lbfactor=1worker.news-loadbalancer.type=lb
worker.news-loadbalancer.balance_workers=news#文件服务器工程(d1)
worker.d1.type=ajp13
worker.d1.host=localhost
worker.d1.port=9029
worker.d1.lbfactor=1worker.d1-loadbalancer.type=lb
worker.d1-loadbalancer.balance_workers=d1worker.status.type=status
uriworkermap-d1.properties
/*=d1-loadbalancer!/*.gif=d1-loadbalancer
!/*.jpg=d1-loadbalancer
!/*.png=d1-loadbalancer
!/*.css=d1-loadbalancer
!/*.js=d1-loadbalancer
!/*.htm=d1-loadbalancer
!/*.html=d1-loadbalancer
uriworkermap-news.properties
/*=news-loadbalancer!/*.gif=news-loadbalancer
!/*.jpg=news-loadbalancer
!/*.png=news-loadbalancer
!/*.css=news-loadbalancer
!/*.js=news-loadbalancer
!/*.htm=news-loadbalancer
!/*.html=news-loadbalancer
uriworkermap-root.properties
/*=root-loadbalancer!/*.gif=root-loadbalancer
!/*.jpg=root-loadbalancer
!/*.png=root-loadbalancer
!/*.css=root-loadbalancer
!/*.js=root-loadbalancer
!/*.htm=root-loadbalancer
!/*.html=root-loadbalancer
现在运行了2,3天时间发现偶尔会有异常,打不开现象,重启下影响不大,不过不知道原因很痛苦!
tomcat日志:
2008-10-28 13:18:59 org.apache.jasper.compiler.TldLocationsCache processWebDotXml
警告: Internal Error: File /WEB-INF/web.xml not found
2008-10-28 13:50:22 org.apache.jk.core.MsgContext action
警告: Error sending end packet
java.net.SocketException: Software caused connection abort: socket write error
问题补充:
能否详细点,最近又来了这个异常,现在直接启动不起来了。!!!
mod_proxy_ajp不熟悉啊。能否帮忙!!!这些天一直比较头疼!
问题补充:
关键的是我还有url重写!!!
问题补充:
/*=news-loadbalancer
/*=root-loadbalancer
这个我用了3个。。
问题补充:
还是感谢你的回复。。
不过mod_proxy_ajp不支持表达式吧。。
问题补充:
希望给点提示。。我结贴了。