Apache整合Tomcat,负载均衡,session共享
Apache整合Tomcat,负载均衡,session共享
张先生Ricky 发表于3个月前
Apache整合Tomcat,负载均衡,session共享
  • 发表于 3个月前
  • 阅读 17
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

1、把mod_jk.so手工copy进我们的Apache安装目录的modules目录下

mod_jk.so下载地址:http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/

2、打开Apache安装目录的conf目录下的httpd.conf文件,在文件最后添加

#以下是我加的
include conf/mod_jk.conf

3、在同目录下新建文件mod_jk.conf,并添加如下内容

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

###配置 mod_jk
#加载集群中的workers
JkWorkersFile conf/workers.properties

#加载workers的请求处理分配文件
JkMountFile conf/uriworkermap.properties

#指定jk的日志输出文件
JkLogFile logs/mod_jk.log

#指定日志级别
JkLogLevel warn

4、在同目录下新建文件workers.properties,并添加如下内容

# worker列表
worker.list = controller

#========tomcat1========
#ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat1.port=8009
#tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
#server的加权比重,值越高,分得的请求越多
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.retries=3
#指定分担请求的server列表,用逗号分隔
worker.controller.balanced_workers=tomcat1,tomcat2

worker.controller.sticky_session=0
worker.controller.sticky_session_force=0

5、在同目录下新建文件uriworkermap.properties,并添加如下内容

#所有请求都由controller这个server处理
/*=controller

#所有包含MyProject请求都由controller这个server处理
/MyProject/*=controller

#所有以.gif结尾的请求都不由controller这个server处理,以下几个都是一样的意思
!/*.gif=controller
!/*.jpg=controller
!/*.png=controller
!/*.css=controller
!/*.js=controller
!/*.htm=controller
!/*.html=controller

#这里的!相当于“非”

6、将Tomcat复制一份,打开Tomcat下conf文件夹下的server.xml文件 将带红框处的端口号修改为未使用的端口号,AJP/1.3的端口号还要与前面workers.properties文件里设置的一样

7、给Engine标签加上jvmRoute="tomcat1",此处的tomcat1需要与前面workers.properties文件里的名称一致,反注释Cluster标签

8、最后修改web应用WEB-INF目录下的web.xml文件在**</web-app>前加<distributable/>(这个是tomcat进行session复制所必须的,否则session不能进行复制!)或者改变Tomcat的content.xml配置文件,修改<Context distributable="true">**

**注意:**如果是在同一台机器上配置多个tomcat实例来进行集群的测试,那么请一定要注意tomcat实例运行的端口和 集群所监听的端口是否冲突!

共有 人打赏支持
粉丝 0
博文 18
码字总数 3663
×
张先生Ricky
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: