apache+tomcat+jk 负载均衡初篇

原创 2015年11月19日 23:27:51

起因 : 说起和负载均衡还是在我面试的时候被面试官问到,正好项目当中有用redis 实现分布式session 的管理,这才让我想写一篇关于负载均衡的文章

首先我不会介绍tomcat 如何安装的问题,jdk 环境变量如何配置的,还是需要有一定开发基础的

那么为什么会采用 apache+tomcat+jk 呢 我觉得学习一个东西先慢慢的找资料,然后一步一步了解,比较,学习的一个过程 其实还有 nginx 也可以实现


首先呢先简单介绍下 apache 服务器实现了什么 apache 可以处理静态页面 而 tomcat 在处理动态展现的时候比较好,apache 可以充当分发角色 可以配置多个tomcat 来实现负载均衡


我的版本是 tomcat-6.0 左右就可以 apache 是 2.4x 左右 jdk 1.7 windows 7 我会写出我配置的详细步骤,及遇到的一些问题


tomcat 下载地址

http://tomcat.apache.org/

apache 服务器下载地址

http://httpd.apache.org/


首先把下载的tomcat 复制一份 分别叫tomcat1,tomcat2 进行解压

然后把apache 解压目录如下:



然后打开conf 目录编辑httpd.conf 在最后加入一行

Include conf/mod_jk.conf

然后在conf 目录下创建mod_jk.conf 文件 内容如下

LoadModule jk_module modules/mod_jk.so
 
JkWorkersFile conf/workers.properties

#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器   
JkMount /*.jsp controller

首先我要简单介绍下 mod_jk.so 是个什么 在apache 和 tomcat 整合中它其实起到了重要作用

下载地址

http://mirror.bjtu.edu.cn/apache/tomcat/tomcat-connectors/jk/binaries/windows/ 记住选择和apache 相对应的版本即可

下载过了解压会有mod.jk.so 文件然后你知道放在哪里了吧,把文件放到我们apache 的modules 目录中你懂得。

在介绍下 workers.properties 里面是什么,同时也是需要我们在conf 目录下面创建的,里面主要是负载的一些配置

worker.list = controller,tomcat1,tomcat2
#tomcat1
worker.tomcat1.port=8009       
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor=1
#tomcat2
worker.tomcat2.port=8109     
worker.tomcat2.host=localhost
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor=2
#========controller========
worker.controller.type=lb
worker.controller.balance_workers=tomcat1,tomcat2
worker.lbcontroller.sticky_session=0
worker.controller.sticky_session_force=true
worker.connection_pool_size=3000
worker.connection_pool_minsize=50
worker.connection_pool_timeout=50000

然后是不是就搞定了呢 当然不是了,还需要配置tomcat,由于tomcat 默认就是8009 记住我说的不是访问端口往下看你就明白了

我们tomcat1 改动不大,直接修改tomcat2 配置如下

1)修改 server.xml 文件中

<Server port="8105" shutdown="SHUTDOWN"> 原来是8005 为了避免和tomcat1 的重复 port 可以随便不固定

2)由于我们的访问端口都是8080 所以需要修改下 

<Connector port="9999" protocol="HTTP/1.1"   maxThreads="150" connectionTimeout="20000"  redirectPort="8443" />

3)是重点了

<!-- Define an AJP 1.3 Connector on port 8009 -->
 <Connector port="8109" protocol="AJP/1.3" redirectPort="8443" /> 知道8190 指的是哪里吧,就是workers.properties tomcat2配置的端口了

4)往下

 <Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat2"> jvmRoutue 改成我们配置的, 记住tomcat1 里面的也要改下 改成tomcat1 我就不多说了

在里面添加

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>

是不是很简单啊,基本tomcat 的已经配置完成了


启动的顺序最好是

apache tomcat 

然后先启动 apache 解压的bin 目录有启动httpd.exe 如果你没jdk 配置环境变量窗口会一闪而过,然后你会发现你你jdk 配置了也会一闪而过

原因就是我们需要配置 apache 的 httpd.exe -k install -n apache2.4 具体咋配置我忘了 不行你在查查吧

如果配置好了会多个


启动就好了

然后你就可测试了 localhost/test 是走apache 的 你可以后台打印出语句 然后把其中tomcat 关掉另一个也可以使用

由于,我之前并没有接触过这类的,可能说的并不是特别对但是 程序是没有问题的,建议大家多多查找资料,共同提高

版权声明:本文为博主原创文章,未经博主允许不得转载。

Ubuntu14.04下Apache2+mod_jk+tomcat 配置Tomcat服务器集群负载均衡

最近配置服务器的负载均衡,网上的文档多但比较早、并不详细,我参考了 apache网站上的文档,和博客在这里做一个记录。 首先说一下背景,以下来自于百度百科。 mod_jk 简称JK,是Apache服...
  • just_young
  • just_young
  • 2015年08月07日 14:22
  • 1850

Apache+Tomcat+JK 实现集群、负载均衡

Apache+Tomcat+JK 实现集群、负载均衡
  • dingxy
  • dingxy
  • 2011年02月18日 15:26
  • 560

ubuntu下apache+tomcat+jk配置负载均衡

ubuntu下apache+tomcat+jk配置负载均衡   环境: Ubuntu10.04 apache 2.2.24 tomcat 6.0.260 mod_jk mod_jk/1...
  • chmo2011
  • chmo2011
  • 2011年10月09日 14:38
  • 944

干货 | 人工智能体系大纲图谱(初、中、高级篇)

可以用来开发机器学习主要有三门语言:Python Java C++,其中Python是主流。下面是Python具体的学习大纲,所以大家也可以参考来学习一下。...
  • chenjunji123456
  • chenjunji123456
  • 2016年11月08日 10:03
  • 655

[人工智能]机器学习大纲篇

前言在介绍机器学习前,大家要明白人工智能与机器学习以及深度学习这三块他们的一个关系. 机器学习是实现人工智能的一种方式;而深度学习是机器学习的一种形式;学习大纲下一篇着重介绍算法的实现...
  • BaiHuaXiu123
  • BaiHuaXiu123
  • 2016年11月05日 01:25
  • 4182

求解释{}和[]的诡异组合(http://bbs.51js.com/thread-90593-1-1.html)

大神求解释: []+[] = "" 这个可以理解为调用了toString {}+{}=NaN 这个就不懂了 []+{}=[object Object] 这是肿么了。。 {}+[]=...
  • kittyjie
  • kittyjie
  • 2012年11月30日 09:18
  • 3305

windows下Apache+tomcat+jk方式实现负载均衡

前言: 环境:  windows7 64、JDK1.8、Apache2.4、Tomcat8.0  JK 下载地址:      JDK1.8 Apache2.4 Tomcat8.0JK ...
  • u011752272
  • u011752272
  • 2018年01月29日 19:50
  • 29

大型架构.net平台篇(中心层均衡负载WCF)

http://www.cnpetweb.com/a/xinxizhongxin/lanmu9/2012/0217/34128.html 大型架构.net平台篇(中心层均衡负载WCF) 2012...
  • susubuhui
  • susubuhui
  • 2012年07月24日 09:15
  • 2431

Linux中Apache+Tomcat+JK实现负载均衡配置

1、服务器安装 tomcat 2、服务器安装 apache  (httpd) 注意事项: 1、如果是手动编译apache的话,必须下载到服务器之后在编译,不能编译      好了在上传到服务器。 ...
  • rihaduo202
  • rihaduo202
  • 2013年09月24日 12:55
  • 878

Apache+Tomcat+JK配置win7(64)下的负载均衡

负载均衡听起来很高端,不会怎么办? 网上教程质量参差不齐怎么办? 网上没有win7(64位)下的tomcat负载均衡教程怎么办? 请仔细阅读本文!笔者的真实配置负载均衡经历...
  • jinzheng069
  • jinzheng069
  • 2014年03月30日 15:30
  • 1943
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:apache+tomcat+jk 负载均衡初篇
举报原因:
原因补充:

(最多只允许输入30个字)