php开源嘛
首页 | English | MySql数据库 | Php编程 | 建站杂烩 | 系统服务器 | 资源共享 | 专题 | 才桀网 | 支持论坛
  当前位置:主页>系统服务器>文章内容
Apache+Tomcat负载平衡设置方法详细解析
来源:网络 作者:未知 发布时间:2007-07-27  

socket_keepalive:

当防火墙位于web server与Tomcat之间时,防火墙将尝试断开未激活的网络连接。此属性将告诉操作系统在未激活的连接中发送KEEP_ALIVE信息(发送间隔时间依赖于操作系统的设置,一般为120秒),这样将防止防火墙切断未激活的网络连接。

但此设置并不是万能钥匙,它对于某些防火墙也无能为力。

socket_timeout:

此属性说明连接在未激活的状况下持续多久,web server将主动切断之。这是一个使Tomcat端的陈旧线程不致过多的好方法,但是也带来了在下一次请求到来时需要重新打开socket的开销。此属性与cache_timeout有类似的功效,但是它工作在non-cache模式。

connect_timeout:

web server在连接建立后将一个PING请求发送到ajp13协议的连接上。 此属性说明了web server等待PONG回应的时间(以ms为单位)。此属性在jk 1.2.6版本被增加进来,以求避免Tomcat的死机,Tomcat 3.3.2+, 4.1.28+ and 5.0.13+实现了对使用ajp13的 ping/pong的支持。此属性默认为失效的。

prepost_timeout:

web server在转发一个请求后将一个PING请求发送到ajp13协议的连接上。此属性说明了web server等待PONG回应的时间(以ms为单位)。此属性在jk 1.2.6版本被增加进来,以求避免Tomcat的死机,Tomcat 3.3.2+, 4.1.28+ and 5.0.13+实现了对使用ajp13的 ping/pong的支持。此属性默认为失效的。

reply_timeout:

此属性告诉web server在接到远端的Tomcat已死并实时的切换到集群中的另外一个Tomcat的回应之前等待一段时间。默认情况下web server将永远等待。属性值为web server要等待回应的时间(以ms为单位),所以如果具有运行时间较长的servlet时设置其值要小心。此属性在jk 1.2.6版本被增加进来,以求避免Tomcat的死机和在支持ajp13的servlet引擎上发生的问题。此属性默认为失效的。

recovery_options:

此属性说明了web server在检测到Tomcat失败后如何进行恢复工作。默认情况下,web server将转发请求给处于负载平衡模式中的另一个Tomcat。属性值为0,说明全部恢复;属性值为1,说明如果在Tomcat接到请求后出现失败状况,则不进行恢复;属性值为2,说明如果在Tomcat发送http头给客户端后出现失败状况,则不进行恢复;属性值为3,说明如果在Tomcat接到请求后出现失败状况或者在Tomcat发送http头给客户端后出现失败状况,则不进行恢复。此属性在jk 1.2.6版本被增加进来,以求避免Tomcat的死机和在支持ajp13的servlet引擎上发生的问题。此属性默认为全部恢复。

例如:一个名为“worker2”的worker的配置:

worker.worker2.host
=www2.x.comworker.worker2.port=
8009worker.worker2.lbfactor
=3.5worker.worker2.cachesize
=10worker.worker2.cache_timeout
=600worker.worker2.socket_keepalive
=1worker "worker2" want ajp13 connection to be dropped after
5mn (timeout)worker.worker2.socket_timeout=300

说明:上例中的worker要求操作系统在连接上发送KEEP-ALIVE信号。

注意:在ajpv13协议中默认端口为8009。

4.设置lb Worker属性:

负载平衡类型的worker并不与Tomcat worker通讯,它负责管理这些Tomcat worker。


其管理范围如下:

* 初始化在web server的worker列表中定义的worker。

* 使用worker的负载平衡权值,执行基于权值的负载平衡,将数量多的请求发送到负载平衡权值高(在web server看来就是更加健壮的)的worker。

* 维护在同一个Tomcat worker上的同一个session的请求,使其发送到同一个Tomcat worker上。以达到Tomcat worker上的session一致性、持续性。

* 标识已经失败的Tomcat workers,悬空发向它们的请求,在被lb worker管理的其它workers上寻找可以失败恢复的worker。

被同一个lb worker管理多个worker之间的负载平衡的(基于它们的lbfactor和当前用户session),也可以尽量避免由于单一的Tomcat进程死掉而造成这个网站被“杀”的不良反应。

下表说明了lb worker接受的属性:

* balanced_workers:一个由“,”分割的worker列表,用来声明lb worker需要被管理的workers。这些workers不应出现在worker.list属性中。

* sticky_session:表述是否将对SESSION ID的请求路由回到相同的Tomcat worker。如果属性值不为0,它将被设置为JK_TRUE,session将是粘性的,即SESSION ID的请求路由回到相同的Tomcat worker;当Tomcat正使用能够跨越多个Tomcat实例持久化session数据的Session Manager时,它将被设置为JK_FALSE。属性默认值为JK_TRUE。

例如:worker balance1管理着两个workers:worker1、worker2:

worker.balance1.balanced_workers=worker1, worker2

5.高级lb Worker属性:


JK 1.2.x版本通过增加两个新的属性:local_worker_only 和 local_worker 为lb worker增添了新的负载平衡和容错支持。

下面让我们举一个实际的环境作为example:

一个集群具有两个节点(worker1+worker2),一个web server与tomcat workers一前一后,一个负载平衡器(lb Worker)位于节点的前面、web server的后面。

配置如下:

worker.list=router# Define a 'local_worker'
 worker using ajp13worker.worker1.port=8009worker.worker1.host
=node1.domain.orgworker.worker1.type=ajp13worker.worker1.lbfactor
=1worker.worker1.local_worker=1# Define another 'local_worker'
worker using ajp13worker.worker2.port=8009worker.worker2.host
=node2.domain.orgworker.worker2.type=ajp13worker.worker2.lbfactor
=1worker.worker2.local_worker=0# Define the LB
workerworker.router.type=lbworker.router.balanced_workers
=worker1,worker2worker.router.local_worker_only=1

在worker1和worker2上的local_worker标志告诉lb_worker哪个连接属于本地worker。

如果local_worker值为非0,则它将被设置为JK_TRUE,用来标记“local worker”,而JK_FALSE的情况则相反。如果至少一个worker被标记为local worker,则lb_worker将工作于local worker模式。这种模式下,所有的local workers将被移到在lb_worker中的内部worker列表的头部。
(阅读次数:

共4页: 上一页 [1] 2 [3] [4] 下一页
上一篇:Apache与Tomcat整合的简单方法:linux系统   下一篇:Jboss4.0下对MySql数据源的设置方法
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论
  热点文章
·Linux配置web服务器全攻略
·Linux系统下Apache服务器设置与
·win中整合配置PHP和MySQL经典教
·Apache日志分析工具--AWStats安
·Apache中httpd.conf文件配置详解
·Linux嵌入式开发环境的简单介绍
·Linux系统下PHP服务器安全配置技
·Linux网络基本网络配置方法介绍
·配置Apache服务器并且设置DNS
·Linux系统Apache用户授权和访问
·Apache伪静态html(URL Rewrite)
·Apache指南: .htaccess文件使用
  相关文章
·Apache与Tomcat整合的简单方法:l
·Linux脚本开发数学库在PHP中的重
·两个多月做包月广告的一点心得
·在Linux系统下建立强大的FTP搜索
·Linux安全攻略 服务器与网络设备
·linux下的sendmail的配置
·Linux下建立Mysql镜像数据库
·Linux嵌入式开发环境的简单介绍
·使用 Linux 应用服务器场的远程
·Linux系统下查CPU个数的方法
·Linux操作系统中用PHP构建网站详
·L.A.M.P 环境配置文档之服务器

关于我们 | 本站声明 | 友情连接 | 诚邀加盟 | 网站地图
版权Power by DedeCms   技术支持QQ =>> 罗江游鱼   Jacking  后台登陆
Copyright @ 2007 公司地址:柳州市东环路268号 邮编:545006 电话:15920389818 桂ICP备07006725号