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 网络科学导论,网络控制
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)