0x0 前言
近日,为解决生产环境热部署问题,决定在服务器中增加一个tomcat组成集群,利用集群解决热部署问题。
这样既能解决高并发瓶颈问题,又能解决热部署(不影响用户使用的情况下平滑更新生产服务器)问题。
因为项目是前后端分离的,所以本以为成本很低,没想到遇到了一系列的坑,解决了2天才搞定,发现了很多不是集群而是项目本身的问题。
我是同一个服务器下配置tomcat和nginx等,本文主要面向有一定基础的读者,基本配置就不在本文累述了(基础问题可以留言或者发邮件)。
0x0_1 服务器环境
服务器: CentOS 6.5
web容器:Tomcat 7.0.25
反向代理:Nginx 1.8
java: jdk 1.7
0x0_2 集群
我是同一个服务器部署两个tomcat,所以地址是127.0.0.1 也可以换成其他服务器的ip
tomcat文件名 | ip地址 | 端口 | 项目名 |
---|---|---|---|
tomcat7-1 | 127.0.0.1 | 8080 | borrow |
tomcat7-2 | 127.0.0.1 | 8090 | borrow |
0x1 tomcat集群配置
修改tomcat的conf/server.xml
如下
tomcat7-1:
<Server port="8005" shutdown="SHUTDOWN">
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8"
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla,traviata" compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
tomcat7-2:
<Server port="8015" shutdown="SHUTDOWN">
<Connector port="8090" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8"