分享

Apache+Tomcat集群之环境搭建 第2页

 鹰皇软件 2014-02-22

<3> conf目录下新建workers.properties文件,其内容如下:
#server列表

worker.list = loadbalancer

 

#========tomcat1========

#ajp13端口号

worker.tomcat1.port=11009

#tomcat的主机地址
worker.tomcat1.host=localhost
#
连结tomcat所用的协议类型

worker.tomcat1.type=ajp13
#
负载平衡因数(只有启动了负载平衡才有用),值越高,分得的请求越多

worker.tomcat1.lbfactor = 1

 

#========tomcat2========

worker.tomcat2.port=12009

worker.tomcat2.host=localhost

worker.tomcat2.type=ajp13

worker.tomcat2.lbfactor = 1

 

#========tomcat3========

worker.tomcat3.port=13009

worker.tomcat3.host=192.168.0.80

worker.tomcat3.type=ajp13

worker.tomcat3.lbfactor = 1

 

#========tomcat4========

worker.tomcat4.port=14009

worker.tomcat4.host=192.168.0.80

worker.tomcat4.type=ajp13

worker.tomcat4.lbfactor = 1

 

#========controller,负载均衡控制器========
#
指定控制器类型

worker. loadbalancer.type=lb
#
指定参与负载均衡的tomcat名称列表

worker. loadbalancer.balanced_workers=tomcat1,tomcat2,tomcat3,tomcat4
#sticky_session
:指明session是否是黏性的。其默认值为1(true),表示使用黏性session,即一个会话中的请求始终由一个tomcat进行处理;为0时表示使用非黏性session,即同一会话中的请求可由不同的tomcat处理,各tomcat之间需同步Session

worker. loadbalancer.sticky_session=0
# sticky_session_force
:指明session的黏性是否是绝对的、强制的。其默认值为0(false),表示非强制,当集群中某台服务器多次请求没响应时,则将请求转发到其它tomcat处理;为1时表示强制,即使某台服务器宕机也不会将请求转发到其它服务器。

worker. loadbalancer.sticky_session_force=0
--------------------------------------------------------------------------------------------------------------------
注:当sticky_sessionsticky_session_force组合时有如下的特征

<4> 4Tomcat进行配置(server.xml),以tomcat1为例,其它同理:
4.1修改Server Port(非必需,只有当一台机器上需部署多个tomcat是才需要修改以达到端口互斥)
<Server port="11005" shutdown="SHUTDOWN">
4.2
修改类型为http1.1的Connector的端口(或者直接将该Connector的配置注释掉,该步骤也是非必需的,其原因和4.1一样)
<Connector port="11080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443" />
4.3 配置Ajp13的
Port
<Connector port="11009" protocol="AJP/1.3" redirectPort="8443" />

4.4 配置JvmRoute,其值必须和workers.properties中的对应名称保持一致
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">

4.5 配置Cluster(将原有Cluster的注释放开即可)

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

说明:4.44.5这两步即使省略掉,对下面<5>的测试结果也毫无影响,因为mod_jk最主要的作用是分发请求和负载均衡,它不关心Tomcat之间怎样集群、Session怎样同步,如果只是用mod_jk将一台apache和一台tomcat整合起来,显然4.44.5没必要配置。

<5> 进行测试
在四个tomcatwebapps目录下建立balancing文件夹,在该文件夹下创建
test1.jsp,内容如下:

<% out.println(“hello world”) ; %>

<% System.out.println("==========="); %>

启动apache,然后启动四个tomcat,在浏览器中输入http://localhost/balancing/test1.jsp,回车后,界面回显hello world,测试成功。

连续快速刷新该页面,会发现在四个tomcat的控制台上都会输出“==========”,此处表明服务器已经实现了负载均衡。

总结:本篇到此结束,下篇对Tomcat的集群机制和Session同步机制进行分析。http://www./Linux/2013-05/84531.htm

linux

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多