iteye_17148 2008-10-29 23:46
浏览 178
已采纳

多个tomcat同一个apache,使用jk建立关系时常出错!

多个项目,放在独立的tomcat上,并没有实现负载,要求实现静态化交给apache处理。



配置了3个tomcat通过jk和apache建立关系:




  1. tom1存放项目名:d1

  2. tom2存放项目名:news

  3. 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 filename

of the mod_jk lib you’ve downloaded and

installed in the previous section

#加载mod_jk模块
LoadModule jk_module modules/mod_jk.so

Where 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.properties

Where 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=1

worker.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=1

worker.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=1

worker.d1-loadbalancer.type=lb
worker.d1-loadbalancer.balance_workers=d1

worker.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不支持表达式吧。。




问题补充:
希望给点提示。。我结贴了。
  • 写回答

2条回答 默认 最新

  • iteye_12852 2008-11-03 22:20
    关注

    站内搜索 apache tomcat proxy

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 如何删除这个虚拟音频
  • ¥50 hyper默认的default switch
  • ¥15 网站打不开,提示502 Bad Gateway
  • ¥20 基于MATLAB的绝热压缩空气储能系统代码咨询
  • ¥15 R语言建立随机森林模型出现的问题
  • ¥20 unity内置语言切换的按钮设置
  • ¥15 中级微观经济学,生产可能性边界问题
  • ¥15 TCP传输时不同网卡传输用时差异过大
  • ¥15 请各位看看我写的属于什么算法,或者有更正确的写法?
  • ¥15 html5 qrcode 扫描器