1.需要的软件
apache 2.0
http://mirror.bjtu.edu.cn/apache//httpd/binaries/win32/httpd-2.2.16-win32-x86-no_ssl.msi
tomcat 6.0
mod_jk
2.安装apache ,tomcat。
安装apache 使之可以访问。
将mod_jk-1.2.30-httpd-2.2.3.so 文件名修改文 mod_jk.so并拷贝到modules目录。
安装3个tomcat。
修改tomat配置文件server.xml文件。
修改地方:
分别修改端口
tomcat1:
<Server port="8005" shutdown="SHUTDOWN">
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="s1">
去掉注释:
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
tomcat2:
<Server port="9005" shutdown="SHUTDOWN">
<Connector port="9080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="9009" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="s2">
去掉注释:
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
tomcat3:
<Server port="7005" shutdown="SHUTDOWN">
<Connector port="7080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="7009" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="s3">
去掉注释:
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
配置负载均衡
在apache 的conf目录。
添加一个文件jk_mod.conf.
内容为:
LoadModule jk_module modules/mod_jk.so
### 配置 mod_jk
#加载集群中的workers
JkWorkersFile conf/workers.properties
#tomcat 处理的文件
JkMount /*.jsp loadbalancer
#加载workers的请求处理分配文件
#JkMountFile conf/uriworkermap.properties
#指定jk的日志输出文件
JkLogFile logs/mod_jk.log
#指定日志级别
JkLogLevel warn
在apacheconf目录新建文件 workers.properties
# worker列表
worker.list=s1,s2,s3,loadbalancer
#第一个server的配置,server名为s1
#ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.s1.port=8009
#tomcat的主机地址,如不为本机,请填写ip地址
worker.s1.host=localhost
worker.s1.type=ajp13
#server的加权比重,值越高,分得的请求越多
worker.s1.lbfactor=1
#第二个server的配置,server名为s2
worker.s2.port=9009
worker.s2.host=localhost
worker.s2.type=ajp13
worker.s2.lbfactor=1
#第三个server的配置,server名为s3
worker.s3.port=7009
worker.s3.host=localhost
worker.s3.type=ajp13
worker.s3.lbfactor=1
#server名为controller,用于负载均衡
worker.loadbalancer.type=lb
worker.retries=3 #重试次数
#指定分担请求的server列表,用逗号分隔
worker.loadbalancer.balanced_workers=s1,s2,s3
#设置用于负载均衡的server的session可否共享,设置以后请求在同一台机器上访问。sticky_session_force 设置为1,
#当一台机器宕机时session拷贝到另外一台服务器。
worker.loadbalancer.sticky_session=1
#worker.loadbalancer.sticky_session_force=1
#worker.status.type=status
修改http.conf文件
添加一行
Include conf/jk_mod.conf
配置session复制。
修改每个应用程序的web.xml文件。
在文件中添加一行。
<distributable/>
这样session就可以在不同的tomcat中进行复制了。