Posted on 2009-06-22 18:36
J2EE Home工作室 阅读(2113)
评论(2) 编辑 收藏 所属分类:
Apache + Tomcat
1.安装程序运行所需要的文件:JDK、Apache、Tomcat
2.另外还需要下载一个JK包,下载地址是
http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.28,这里需要的版本是
mod_jk-1.2.28-httpd-2.2.3.so ,下载后将其复制到apache安装目录的modules文件夹下,可以不用改名。
3.在httpd.conf所在的目录下新建两个文件:mod_jk.conf、works.properties
在mod_jk.conf中写入
#加载mod_jk Module
LoadModule jk_module modules/mod_jk-1.2.28-httpd-2.2.3.so
#指定 workers.properties文件路径
JkWorkersFile conf/workers.properties
#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器
JkMount /*.jsp controller
|
在works.properties中写入
worker.list = controller,tomcat1,tomcat2 #server 列表
#========tomcat1========
worker.tomcat1.port=8009 #ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat1.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1 #server的加权比重,值越高,分得的请求越多
#========tomcat2========
worker.tomcat2.port=9009 #ajp13 端口号,在tomcat下server.xml配置,默认8009,不要写成tomcat的端口号
worker.tomcat2.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 1 #server的加权比重,值越高,分得的请求越多
#========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2 #指定分担请求的tomcat
worker.controller.sticky_session=1
|
4.在httpd.conf的最后一行引入上边配置的文件:Include conf/mod_jk.conf,注意此文件尽量不要使用绝对路径。
5.修改tomcat:如果多个tomcat不在同一台机器,则不用修改。否则保持第一个tomcat 的配置不变,只需在server.xml文件中改动 <Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">,指定jvmRoute,为了在works.properties中调用,修改其他的tomcat的配置,修改server.xml文件的<Server port="8005" shutdown="SHUTDOWN">的端口号,为了使多个tomcat同时启动;修改<Engine name="Catalina" defaultHost="localhost" >为<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">,并修改 <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />AJP的端口号。
6到这基本上已经配置完了,在多个tomcat中部署同一个应用测试下效果,如果文件较大,访问数较多后就会发现tomcat是轮流执行,并关掉其他tomcat后在只保留一个的情况下同样能够正常访问,实现在负载均衡和容错机制。
问题:
1.apache怎么知道tomcat 的位置?在works.properties中并没有指定tomcat 所在的位置,他是通过什么找到tomcat的?
2.AJP?
3.关于tomcat的集群配置问题随后补上