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

[经验分享] apache+jk+tomcat 负载均衡(windows系统)

[复制链接]

尚未签到

发表于 2017-1-4 09:47:36 | 显示全部楼层 |阅读模式
本操作步骤部分仿照网上案例,再加上自己的一些说明;(测试通过的)
第一步:准备工作下载相关软件
1、Apache HTTP Server (httpd) 2.2.17下载
http://labs.renren.com/apache-mirror//httpd/binaries/win32/httpd-2.2.17-win32-x86-openssl-0.9.8o.msi
2、Tomcat6.0.29下载
http://labs.renren.com/apache-mirror/tomcat/tomcat-6/v6.0.29/bin/apache-tomcat-6.0.29-windows-x86.zip
3、mod_jk-1.2.31-httpd-2.2.3:http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.31/mod_jk-1.2.31-httpd-2.2.3.so
第二步:分别安装tomcat、apache,在安装apache时候注意:
1、此处注意,如果你本机已经装了iis并且占用80端口,务必先在服务中将iis停止或禁用。软件默认安装即可。安装过程中设置Network Domain和Server Name为localhost,
设置你的email地址,下方会让你选择only for the current user或for all users。默认选择for all users。这样Apache就会占用80端口,并且做为一个系统服务开机自运
行。
2、安装完后,在系统"拖盘"处看见Apache的羽毛图标,如果机子本身已安装IIS,此时图标上为红色的圆点,是因为IIS和Apache在端口80上的重复,修改IIS端口为其它端口.或修
改apache\conf下的httped.conf文件,修改"Listen 80" 中的80为其它.(本配修改了IIS端口,使得Apache的端口为80)
3、安装完成后,进入D:\Program Files\Apache Software Foundation\Apache2.2\bin,双击ApacheMonitor.exe,启动apache,在地址栏输入:http://localhost,显示it work!说明成功了。
第三步:Jk和apache的整合:
把mmod_jk-1.2.31-httpd-2.2.3.so拷贝到D:\Program Files\Apache2.2\modules\下
在D:\Program Files\apache2.2\conf\httpd.conf文件最后加入
#设置Apache与Tomcat之间的连接,让Apache遇到jsp文件时,在后台将其交由Tomcat去处理
#此处mod_jk的文件为你下载的文件
LoadModule jk_module modules/mod_jk-1.2.31-httpd-2.2.3.so
#指定tomcat监听配置文件地址
JkWorkersFile conf/workers.properties
#指定日志存放位置
JkLogFile logs/mod_jk.log
#指定日志级别
JkLogLevel debug
#不可缺少,否则只有一个tomcat能运行
NameVirtualHost *:80
第四步:apache和tomcat的整合:
1、首先配置tomcat的虚拟目录,打开tomcat/conf/server.xml文件,在<host>标签之间加入:<Context path="" docBase="D:\JAVA\testSpace\SpringTest\WebRoot" />,这个是指定java可执行文件目录;并且指定path为"",这样在输入地址的时候只需要输入http://localhost:8080即可;另外再修改这个文件的Engine标签:
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcatA">         
同理,如果有多个tomcat,同样需要更改engine、添加虚拟目录、另外别忘更改tomcat端口;
2、在\apache2.2\conf目录下,新建workers.properties文件,添加
worker.list=loadbalancer
# Define the first node...
worker.tomcatA.port=8009#Tomcat worker主机的侦听端口。
worker.tomcatA.host=localhost#它定义了此worker的负载平衡权值。
worker.tomcatA.type=ajp13
worker.tomcatA.lbfactor=1
worker.tomcatA.connection_pool_timeout=750
worker.tomcatA.socket_keepalive=0#此属性将告诉操作系统在未激活的连接中发送KEEP_ALIVE信息(发送间隔时间依赖于操作系统的设置,一般为120秒),这样将防止防火墙切断未激活的网络连接。
worker.tomcatA.socket_timeout=300000#此属性说明连接在未激活的状况下持续多久,web server将主动切断之。
worker.tomcatA.connect_timeout=10000# 此属性说明了web server等待PONG回应的时间(以ms为单位)。
worker.tomcatA.reply_timeout=330000#此属性告诉web server在接到远端的Tomcat已死并实时的切换到集群中的另外一个Tomcat的回应之前等待一段时间。
worker.tomcatA.reply_timeout=0#此属性说明了web server在检测到Tomcat失败后如何进行恢复工作(默认就是0,全部恢复)
# Define the second node...
worker.tomcatB.port=8019
worker.tomcatB.host=localhost
worker.tomcatB.type=ajp13
worker.tomcatB.lbfactor=1
worker.tomcatB.connection_pool_timeout=750
worker.tomcatB.socket_keepalive=0
worker.tomcatB.socket_timeout=300000
worker.tomcatB.connect_timeout=10000
worker.tomcatB.reply_timeout=330000
# Now we define the load-balancing behaviour
worker.loadbalancer.type=lb
worker.retries=3
worker.loadbalancer.balance_workers=tomcatA,tomcatB
worker.loadbalancer.sticky_session=0#表述是否将对SESSION ID的请求路由回到相同的Tomcat worker。(默认是0,session不复制)
内容;
第五步:配置虚拟主机:
1、打开D:\Program Files\apache2.2\conf\httpd.conf文件,在最后增加:
#设置虚拟主机
<VirtualHost localhost>
ServerAdmin localhost
#路径中不能存在空格
DocumentRoot D:\JAVA\testSpace\SpringTest\WebRoot
ServerName localhost
ErrorLog logs/shsc-error_log.txt
CustomLog logs/shsc-access_log.txt common
<Directory "D:\JAVA\testSpace\SpringTest\WebRoot">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
#让Apache支持对servlet传送,用以Tomcat解析
JkMount /servlet/* loadbalancer
#让Apache支持对jsp传送,用以Tomcat解析
JkMount /*.jsp loadbalancer
#让Apache支持对.do传送,用以Tomcat解析
JkMount /*.action loadbalancer
</VirtualHost>

好了,到这一步,就已经完成了,这个时候你用不同浏览器访问http://localhost,如果访问出来的是文件列表,需要修改
<IfModule dir_module>
    DirectoryIndex index.jsp
</IfModule>
,如果他们是多个tomcat轮循访问,那就配置成功了。

运维网声明 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-323643-1-1.html 上篇帖子: [转] apache http 搭建 SVN服务器 下篇帖子: apache-tomat负载均衡和集成
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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