在Win7中使用apache为tomcat做负载均衡,各组件及版本如下:

两个tomcat v 7.0.57

一个apache v 2.2.14

一个mod_jk v 1.2.33(for windows i386 httpd 2.2.x),下载地址:http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/tomcat-connectors-1.2.33-windows-i386-httpd-2.2.x.zip

配置方法:

1.安装apache(略)

 在安装目录(conf所在目录)再增加一个文件夹:conf.d, 在此文件夹下面,编辑如下文件:

 mod_jk.conf

  1. # Load mod_jk module
  2. LoadModule jk_module modules/mod_jk.so
  3. # Where to find workers.properties
  4. JkWorkersFile conf.d/workers.properties
  5. # Where to put jk logs
  6. JkLogFile logs/mod_jk.log
  7. # Set the jk log level [debug/error/info]
  8. JkLogLevel info
  9. # Select the log format
  10. JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
  11. # JkOptions indicate to send SSL KEY SIZE,
  12. JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
  13. # JkRequestLogFormat set the request format
  14. JkRequestLogFormat "%w %V %T"
  15. # Send servlet for context /examples to worker named ajp13
  16. #JkMount /servlet/* controller
  17. # Send JSPs for context /examples to worker named ajp13
  18. JkMount /* controller

这个配置JKMoun /* controller表示将apache的所有请求都转向tomcat。再编辑一个文件如下:

workers.properties

  1. #
  2. # workers.properties
  3. #
  4.  
  5. # list the workers by name
  6. worker.list=controller
  7. worker.controller.type=lb
  8. worker.controller.sticky_session=1
  9. worker.controller.error_escalation_time=0
  10. worker.controller.max_reply_timeouts=10
  11.  
  12. # localhost server 1
  13. # ------------------------
  14. worker.jvm1.reference=worker.template
  15. worker.jvm1.port=8019 #对应tomcat ajp 端口
  16. worker.jvm1.host=localhost
  17. worker.jvm1.lbfactor = 1 #权重
  18. worker.jvm1.activation=A
  19.  
  20. # localhost server 2
  21. # ------------------------
  22. worker.jvm2.reference=worker.template
  23. worker.jvm2.port=8029
  24. worker.jvm2.host=localhost
  25. worker.jvm2.lbfactor = 1
  26. worker.jvm2.activation=A
  27.  
  28. worker.template.type=ajp13
  29. worker.template.socket_connect_timeout=5000
  30. worker.template.socket_keepalive=true
  31. worker.template.ping_mode=A
  32. worker.template.ping_timeout=10000
  33. worker.template.connection_pool_minsize=0
  34. worker.template.connection_pool_timeout=600
  35. worker.template.reply_timeout=300000
  36. worker.template.recovery_options=3
  37.  
  38. worker.controller.balance_workers=jvm1, jvm2
  39. #对应两个tomcat jvmRoute

然后,编辑conf/httpd.conf,在最后加入如下一行:

  1. Include conf.d/mod_jk.conf

将上面下载的mod_jk.so,复制到apache的安装目录modules下面。

2.配置tomcat

  修改第一个tomcat的server.xml,如下所示:

  1. ...
  2. <Server port="8015" shutdown="SHUTDOWN">
  3. ...
  4. <Connector port="8091" protocol="HTTP/1.1"
  5. connectionTimeout="20000"
  6. redirectPort="8443" />
  7. ....
  8. <Connector port="8019" protocol="AJP/1.3" redirectPort="8443" />
  9. ...
  10. <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
  11. ...
  12. <!---->
  13. <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
  14. ...

  同理修改第二个tomcat的配置:

  1. ...
  2. <Server port="8025" shutdown="SHUTDOWN">
  3. ...
  4. <Connector port="8092" protocol="HTTP/1.1"
  5. connectionTimeout="20000"
  6. redirectPort="8443" />
  7. ....
  8. <Connector port="8029" protocol="AJP/1.3" redirectPort="8443" />
  9. ...
  10. <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm2">
  11. ...
  12. <!---->
  13. <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
  14. ...

最后两个tomcat的web.xml,都加入一行<distributable/>到如下位置:

  1. ...
  2. <distributable/>
  3.  
  4. </web-app>

启动apache,和两个tomcat,即可按apache的监听端口进行访问,tomcat的监听端口忽略不用,如:

http://localhost 或 http://127.0.0.1

tomcat 7 用mod_jk做 负载均衡的更多相关文章

  1. Nginx+Tomcat在Windows下做负载均衡

    一. 为什么需要对Tomcat服务器做负载均衡 Tomcat服务器作为一个Web服务器,其并发数在300-500之间,如果有超过500的并发数便会出现Tomcat不能响应新的请求的情况,严重影响网站的 ...

  2. Apache+Tomcat+mod_jk实现负载均衡

    最近公司提出了负载均衡的新需求,以减轻网站的高峰期的服务器负担.趁空闲时间我就准备了一下这方面的知识,都说有备无患嘛.网上相关资料很多,但是太散.我希望可以通过这篇随笔,系统的总结. 一.Tomcat ...

  3. tomcat结合nginx或apache做负载均衡及session绑定

    1.tomcat结合nginx做负载均衡,session绑定 nginx:192.168.223.136   tomcat:192.168.223.146:8081,192.168.223.146:8 ...

  4. Nginx+tomcat 做负载均衡

    架构描述 前端一台nginx服务器做负载均衡器,后端放N台tomcat组成集群处理服务,通过nginx转发到后面(注:没做动静分离,静态动态全部都转给tomcat) 优点:实现了可弹性化的架构,在压力 ...

  5. nginx做负载均衡和tomcat简单集群

    Nginx做负载均衡和TOMCAT简单集群                1.下载安装nginx及其依赖包                                               ...

  6. [Linux]nginx tomcat做负载均衡

    之前使用nginx做过web反向代理,没有做过负载均衡,今天有个同学须要做tomcat的负载均衡,我也研究下. 一共是2个机器,一个物理机(win7)上面部署2个tomcat,使用不同的port启动. ...

  7. 用apache和tomcat搭建集群,实现负载均衡

    型的企业应用每天都需要承受巨大的访问量,在着巨大访问量的背后有数台服务器支撑着,如果一台服务器崩溃了,那么其他服务器可以使企业应用继续运行,用户对服务器的运作是透明化的,如何实现这种透明化呢?由如下问 ...

  8. Tomcat服务器集群与负载均衡实现

    一.前言 在单一的服务器上执行WEB应用程序有一些重大的问题,当网站成功建成并开始接受大量请求时,单一服务器终究无法满足需要处理的负荷量,所以就有点显得有 点力不从心了.另外一个常见的问题是会产生单点 ...

  9. nginx和tomcat实现反向代理、负载均衡和session共享

    这类的文章很多,nginx和tomcat实现反向代理.负载均衡实现很容易,可以参照http://blog.csdn.net/liuzhigang1237/article/details/8880752 ...

随机推荐

  1. How To Install Development Tools In Linux

      In this brief tutorial, we will be discussing how to install development tools in popular Linux di ...

  2. 【ASP.NET基础】客户端、服务器端的数据验证 + CKEditer

    1, 客户端 用Javascript进行验证,直接提示用户输入的数据是否符合规范,是否合法. 这样体验行比较好,客户端立即就可以得到反馈,而且减少了服务器端的数据交互. 这样前端数据验证并不是很安全, ...

  3. 跟我一起学习ASP.NET 4.5 MVC4.0(五)(转)

    前面几篇文章介绍了一下ASP.NET MVC中的一些基础,今天我们一起来学习一下在ASP.NET MVC中控件的封装.在页面中我们会经常使用到Html对象,来程序控件,当然这里的控件不是说ASP.NE ...

  4. android ListView下拉刷新 上拉加载更多

    背景 最近在公司的项目中要使用到ListView的下拉刷新和上拉加载更多(貌似现在是个项目就有这个功能!哈哈),其实这个东西GitHub上很多,但是我感觉那些框架太大,而且我这个项目只用到了ListV ...

  5. onclick跳转

    ☆如果是本页显示可以直接用location,方法如下: ①onclick="javascript:window.location.href='URL'" ②onclick=&quo ...

  6. 第一个Cocos2d-x Lua游戏

    我们的编写的第一个Cocos2d-x Lua程序,命名为HelloLua,从该工程开始学习其它的内容.创建工程我们创建Cocos2d-x Lua工程可以通过Cocos2d-x提供的命令工具cocos实 ...

  7. CSS布局 ——从display,position, float属性谈起(转)

    CSS布局 ——从display,position, float属性谈起   页面布局,或者是在页面上做些小效果的时候经常会用到 display,position和float 属性,如果对它们不是很了 ...

  8. UI3_UITableView

    // // AppDelegate.m // UI3_UITableView // // Created by zhangxueming on 15/7/13. // Copyright (c) 20 ...

  9. (转)LR监控Linux系统性能计数器详解

    从LR里面add measurement,填写linux机器的IP,出现所有unix/linux的计数器,包括cpu的,mem的,disk,network的.这里介绍几个常用的: (对于如何监控Lin ...

  10. java随笔 乱腾腾的 一些东西

    调用requonse.getWriter()方法时可实现文本字符串数据输出,调用response.getOutputStream()方法可现实字节流数据的输出.两种输出方式threadlocal模式和 ...