at1
worker.tomcat1.port=8009
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor=1
#tomcat2
worker.tomcat2.port=9009
worker.tomcat2.host=localhost
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor=1
#========controller========
worker.controller.type=lb
worker.controller.balance_workers=tomcat1,tomcat2
worker.lbcontroller.sticky_session=0
worker.controller.sticky_session_force=true
worker.connection_pool_size=3000
worker.connection_pool_minsize=50
worker.connection_pool_timeout=50000
上面的这些设置的意思用中文来表达就是:
- 两个tomcat,都位于localhost上面的这些设置的意思用中文来表达就是:
- 两个tomcat,tomcat1用8009,tomcat2用9009与apache保持jk_mod的通讯
- 不采用sticky_session的机制
sticky_session即:假设现在用户正连着tomcat1,而tomcat1崩了,那么此时它的session应该被复制到tomcat2上,由tomcat2继续负责该用户的操作,这就是load balance,此时这个用户因该可以继续操作。
如果你的sticky_session设成了1,那么当你连的这台tomcat崩了后,你的操作因为是sticky(粘)住被指定的集群节点的,因此你的session是不会被复制和同步到另一个还存活着的tomcat节点上的。
- 两台tomcat被分派到的任务的权重(lbfactor)为一致
你也可以设tomcat1 的worker.tomcat2.lbfactor=10,而tomcat2的worker.tomcat2.lbfactor=2,这个值越高,该tomcat节点被分派到的任务数就越多
httpd.conf文件内容的修改
找到下面这一行:
Include conf/extra/httpd-ssl.conf
我们将它注释掉,因为我们在集群环境中不打算采用https,如果采用是https也一样,只是为了减省开销(很多人都是用自己的开发电脑在做实验哦)。
#Include conf/extra/httpd-ssl.conf
找到原来的“<VirtualHost>”段
改成如下形式:
<VirtualHost *>
DocumentRoot d:/www
<Directory "d:/www/cbbs">
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Directory "d:/www/cbbs/WEB-INF">
Order deny,allow
Deny from all
</Directory>
ServerAdmin localhost
DocumentRoot d:/www/
ServerName shnlap93:80
DirectoryIndex index.html index.htm index.jsp index.action
ErrorLog logs/shsc-error_log.txt
CustomLog logs/shsc-access_log.txt common
JkMount /*WEB-INF controller
JkMount /*j_spring_security_check controller
JkMount /*.action controller
JkMount /servlet/* controller
JkMount /*.jsp controller
JkMount /*.do controller
JkMount /*.action controller
JkMount /*fckeditor/editor/filemanager/connectors/*.* controller
JkMount /fckeditor/editor/filemanager/connectors/* controller
</VirtualHost>
注意:
原来的JKMount *** 后的 ajp13变成了什么了?
controller
4.2 tomcat中的配置
可以拿原有的tomcat复制成另一个tomcat,分别为d:\tomcat, d:\tomcat2。
打开tomcat中的conf目录中的server.xml,找到下面这行
1)
<Server port="8005" shutdown="SHUTDOWN">
记得:
一定要把tomcat2中的这边的”SHUTDOWN”的port改成另一个端口号,两个tomcat如果是在集群环境中,此处的端口号绝不能一样。
2)找到
<Connector port="8080" protocol="HTTP/1.1"
确保tomcat2中此处的端口不能为8080,我们就使用9090这个端口吧
3)把两个tomcat中原有的https的配置,整段去除
4)找到
<Connector port="8080" protocol="HTTP/1.1"
URIEncoding="UTF-8" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true" connectionTimeout="20000"
acceptCount="300" maxThreads="300" maxProcessors="1000" minProcessors="5"
useURIValidationHack="false"
compression=