设为首页 收藏本站
查看: 901|回复: 0

[经验分享] 一个apache下搭建多个tomcat的实例

[复制链接]

尚未签到

发表于 2017-1-8 11:53:21 | 显示全部楼层 |阅读模式
  在Windows系统下搭建一个apache搭载多个tomcat(Tomcat和Apache集群),apache一是响应静态文件的请求(js、html以及一些图片),二是作为分发器将动态请求分发给下面的tomcat。这样要比单纯tomcat的要高很多,还有就是如果一个tomcat服务器挂了,系统仍然可以运行。
  下面是本人参考网上其他一些同行的播客做的实例:
1、准备工具:
(1)、apache:http://labs.mop.com/apache-mirror//httpd/binaries/win32/#warnings

DSC0000.jpg
 (2)、mod_jk-1.2.28-httpd-2.2.3.so(即JK):这个网上很容易下,我在附件中也已经给出。是这是一款apache用来连接后台tomcat的模块,支持集群和负载均衡。
(3)、两个tomcat(我用的是tomcat6,这个自己下)
2、部署apache、tomcat:
apache直接安装即可,因为我是在一台电脑上做的实验其中一个tomcat需要改端口:
<Server port="9005" shutdown="SHUTDOWN">:原来是8005
  <Connector executor="tomcatThreadPool"
                                                   port="9080" protocol="HTTP/1.1"
                                                   connectionTimeout="20000"
                                                   redirectPort="8443" />     :原来是8080
  <Connector port="9009" protocol="AJP/1.3" redirectPort="8443" />:原来是8009
查看apache是否启动,查看两个tomcat是否能同时启动,如果可以进行下面群集的配置。
3、开始搭建(群集以及负载均衡配置):
(1)、将mod_jk-1.2.28-httpd-2.2.3.so丢到apache下的modules下面,即E:\Apache2.2\modules下面(我的apache路径是E:\Apache2.2)
(2)、配置apache:
E:\Apache2.2\conf下面创建workers.properties(里面配置了分发的tomcat服务器以及负载均衡的配置)
#server
worker.list = controller
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2
worker.controller.sticky_session=true // 粘性session处理
#========tomcat1========
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 // 值越大,分发给的几率越大
E:\Apache2.2\conf下面创建mod_jk.conf,内容如下:
LoadModule jk_module modules/mod_jk-1.2.28-httpd-2.2.3.so
JkWorkersFile conf/workers.properties
#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器名
JkMount /*.jsp controller
在E:\Apache2.2\conf下面找到httpd.conf,在最下面加上:
include "E:\Apache2.2\conf\mod_jk.conf"
(3)、修改tomcat下的配置:
修改conf下面的server.xml:
打开:<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>(之前一般是注释掉了)
<Engine name="Catalina" defaultHost="localhost">改为<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">(tomcat2的话就为tomcat2)
(4)、配置完成,运行tomcat以及apache
4、测试:
用下面给出的test测试:
打开两个不同的浏览器,访问:http://localhost/test/index.jsp

DSC0001.jpg
 
DSC0002.jpg
 发现访问的是两个不同的tomcat说明成功,你不停的刷新一个浏览器,发现sessionID不变,tomcat也不变,这就是因为配置了
粘性session。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-325520-1-1.html 上篇帖子: 查看Apache并发请求数及其TCP连接状态 下篇帖子: Apache禁止访问网站子目录的方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表