请关注 [url]www.ppst.cc[/url]在线视频教程平台
一:软件Software环境
Apache: apache 2.0.55 (由http://httpd.apache.org/进入下载)(点击下载apache 2.0.55)
2. Tomcat: Tomcat 5.5.25 (由http://tomcat.apache.org/进入下载)(点击下载Tomcat 5.5.25 zip版)
3. mod_jk: 在页面 http://tomcat.apache.org/ Download 标题下找到 Tomcat Connectors 链接进入( 点击
下载mod_jk-apache-2.0.55.so)看起来像是个Unix/Linux下动态库实际应是个Win32 DLL 动态库大概是为保
持区别平台配置致性才用了这个扩展名
二:负载均衡
用Apache进行分流把请求按照权重以及当时负荷分tomcat1,tomcat2...去处理
1. 安装apache,tomcat
我把Apache安装在D:\Apache Group\Apache2
解压两分Tomcat, 分别在 D:\Apache Group\Tomcat5_1D:\Apache Group\Tomcat5_2
如果把区别版本Tomcat进行集群目录就可用Tomcat4_3(版本为4.x第 3个tomcat服务器)Tomcat6_4(版本为
6.x第 3个tomcat服务器),这是Unmi本人习惯
2.修改Apache配置文件http.conf
在apache安装目录下conf目录中找到http.conf在文件最后加上下面句话就可以了
conf\mod_jk.conf
3. http.conf 同目录下新建mod_jk.conf文件内容如下
#加载mod_jkModule
LoadModulejk_modulemodules/mod_jk-apache-2.0.55.so
#指定workers.properties文件路径
JkWorkersFileconf/workers.properties
#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定负载分配控制器
JkMount/*.jspcontroller
#加载mod_jk Module
LoadModule jk_module modules/mod_jk-apache-2.0.55.so
#指定 workers.properties文件路径
JkWorkersFile conf/workers.properties
#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定负载分配控制器
JkMount /*.jsp controller 如果还要指定*.do也进行分流就再加行
JkMount /*.do controller
如果你想对所有请求进行分流只需要写成
JkMount /* controller
4. 在http.conf同目录下新建 workers.properties文件内容如下(可能要去除 # 不在行首注释)
worker.list=controller,tomcat1,tomcat2#server列表
#tomcat1
worker.tomcat1.port=8009#ajp13端口号在tomcat下server.xml配置,默认8009
worker.tomcat1.host=localhost#tomcat主机地址如不为本机请填写ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor=1#server加权比重值越高分得请求越多
#tomcat2
worker.tomcat2.port=8109#ajp13端口号在tomcat下server.xml配置,默认8009
worker.tomcat2.host=localhost#tomcat主机地址如不为本机请填写ip地址
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor=2#server加权比重值越高分得请求越多
#controller,负载均衡控制器
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2#指定分担请求tomcat
worker.controller.sticky_session=1
worker.list = controller,tomcat1,tomcat2 #server 列表
#tomcat1
worker.tomcat1.port=8009 #ajp13 端口号在tomcat下server.xml配置,默认8009
worker.tomcat1.host=localhost #tomcat主机地址如不为本机请填写ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1 #server加权比重值越高分得请求越多
#tomcat2
worker.tomcat2.port=8109 #ajp13 端口号在tomcat下server.xml配置,默认8009
worker.tomcat2.host=localhost #tomcat主机地址如不为本机请填写ip地址
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 2 #server加权比重值越高分得请求越多
#controller,负载均衡控制器
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2 #指定分担请求tomcat
worker.controller.sticky_session=1 5. 修改tomcat配置文件server.xml
如果你是水平集群即在区别电脑上安装tomcat,tomcat安装数量为个可以不必修改tomcat配置文件.我这里是在
同台电脑上安装两个tomcat,实现是垂直集群方式所以必须修改其中个设置以避免端口冲突按照参考文章是把原
来以9开头端口号改为以9开头端口号但是在我机器上如果以9开头端口号例如9080、9082会和我WebSphere
Application Server配置冲突所以我这里采取策略是把原来端口号第 3位改为1如8080改为8180
打开tomcat2/conf/server.xml文件
1) 将关闭Tomcat监听端口改成由8005改为8105
即把
<Server port="8005" shutdown="SHUTDOWN">
改为
<Server port="8105" shutdown="SHUTDOWN">
2) 把http服务端口号由8080改为8180
找到
<!-- Define a non-SSL HTTP/1.1 Connector _disibledevent=>把这里8080改为8180
3) 把AJP端口号由8009改为8109
找到
<!-- Define an AJP 1.3 Connector _disibledevent=>把这里8009改为8109
4) 把 HTTP 代理端口从8082改为8182(这个配置默认是被注释掉可跳过这步)
找到
<CONNECTOR port="8082"
把这里8082改为8182
5) 编写个测试 jsp
建立个目录TestCluster里面新建个test.jsp,内容为
CodeViewCopyPr
<%
.out.prln("=");
%>
<%
.out.prln("=");
%>
把TestCluster放到tomcat1,tomcat2webapps下
6) 启动apache,tomcat1,tomcat2,进行测试
通过 http://localhost/TestCluster/test.jsp 访问多刷新几次页面查看Tomcat1和Tomcat2窗口你将可以看到
打印了行行"="并且从统计上来说大约在tomcat2打印数量是在Tomcat1中两倍可以看到请求会被
tomcat1,tomcat2按照区别权重分流处理,实现了负载均衡
作下面集群配置请在workers.properties把tomcat1和tomcat2权重改为样使请求较平均分配将有便于看到实
验效果
3:配置集群
只配置负载均衡还不行还要session复制也就是说其中任何个tomcat添加session是要同步复制到其它tomcat
集群内tomcat都有相同session
1. 修改tomcat1, tomcat2server.xml,将集群部分配置即对<Cluster>节点在注释符删掉,并将tomcat24001端
口改为4002以避免和tomcat冲突当然如果是两台电脑是不用改端口去掉注释符即可
即取消对如下处
<ClusterName="org.apache.catalina.cluster.tcp.SimpleTcpCluster"
managerClassName=
"org.apache.catalina.cluster.session.DeltaManager"
expireSessionsOnShutdown="false"
............
<ClusterListenerName="org.apache.catalina.cluster.session.ClusterSessionListener"/>
</Cluster>
<Cluster Name="org.apache.catalina.cluster.tcp.SimpleTcpCluster"
managerClassName="org.apache.catalina.cluster.session.DeltaManager"
expireSessionsOnShutdown="false"
............
<ClusterListener Name="org.apache.catalina.cluster.session.ClusterSessionListener"/>
</Cluster>
前后注释标记<!-- -->启用该项配置实现服务器间Session复制
2. 为 Tomcat1和 Tomcat2 增加 jvmRoute(先跳过这步有精力可以试验下)
在 Tomcat1 和 Tomcat2 server.xml 文件找到
<ENGINE name="Catalina" defaultHost="localhost">
分别改为
<ENGINE name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">
和
<ENGINE name="Catalina" defaultHost="localhost" jvmRoute="tomcat2">
然而实际我配置时候还不能加jvmRoute属性配置了反而有问题
刷新浏览器窗口总是在某个tomcat控制台输出形如
SessionID:154678FA6D4D0ABD57658B750E7A3532.tomcat1 (在tomcat1窗口)
或者
SessionID:3800571A532AECEA7280F45361861AD4.tomcat2 (在tomcat2窗口)
由控制台打印结果可以看出SessionID在哪个tomcat上产生那么后续该会话请求将总是会这个tomcat来处理
并且注意到SessionID形式比通常情况多了个后缀.tomcat1或.tomcat2还搞不清楚是为什么
配置时请视实际情况而取舍
3. 修改测试项目 TestCluster
修改test.jsp,内容如下
<%@pagecontentType="text/html;char=GBK"%>
<%@pageimport="java.util.*"%>
<html><head><title>ClusterAppTest</title></head>
<body>
<%
.out.prln("SessionID:"+session.getId);
%>
ServerInfo:
<%
out.prln(request.getServerName+":"+request.getServerPort+"<br>");%>
<%
out.prln("<br>ID"+session.getId+"<br>");//如果有新Session属性设置
StringdataName=request.getParameter("dataName");
(dataName!=null&&dataName.length>0){
StringdataValue=request.getParameter("dataValue");
session.Attribute(dataName,dataValue);
}
out.pr("<b>Session列表</b><br>");
Enumeratione=session.getAttributeNames;
while(e.hasMoreElements){
Stringname=(String)e.nextElement;
Stringvalue=session.getAttribute(name).toString;
out.prln(name+"="+value+"<br>");
.out.prln(name+"="+value);
}
%>
<formaction="test.jsp"method="POST">
名称:<inputtype=textsize=20name="dataName">
<br>
数值:<inputtype=textsize=20name="dataValue">
<br>
<inputtype=submit>
</form>
</body>
</html>
<%@ page contentType="text/html; char=GBK" %>
<%@ page import="java.util.*" %>
<html><head><title>Cluster App Test</title></head>
<body>
<%
.out.prln("SessionID:" + session.getId);
%>
Server Info:
<%
out.prln(request.getServerName + " : " + request.getServerPort+"<br>");%>
<%
out.prln("<br> ID " + session.getId+"<br>"); // 如果有新 Session 属性设置
String dataName = request.getParameter("dataName");
(dataName != null && dataName.length > 0) {
String dataValue = request.getParameter("dataValue");
session.Attribute(dataName, dataValue);
}
out.pr("<b>Session 列表</b><br>");
Enumeration e = session.getAttributeNames;
while (e.hasMoreElements) {
String name = (String)e.nextElement;
String value = session.getAttribute(name).toString;
out.prln( name + " = " + value+"<br>");
.out.prln( name + " = " + value);
}
%>
<form action="test.jsp" method="POST">
名称:<input type=text size=20 name="dataName">
<br>
数值:<input type=text size=20 name="dataValue">
<br>
<input type=submit>
</form>
</body>
</html> 4. 配置Session复制
<web-appxmlns="http://java.sun.com/xml/ns/j2ee"xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://java.sun.com/xml/ns/j2ee/webapp_
2_4.xsd"version="2.4">
<display-name>TomcatClusterDemo</display-name>
<distributable/>
<web-app>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/webapp_
2_4.xsd" version="2.4">
<display-name>TomcatClusterDemo</display-name>
<distributable/>
<web-app> 也就是在需要集群应用web.xml中加上属性表明该应用可多应用分流处理能进行Session复制
把TestCluster复制到Tomcat1、Tomcat2webapps目录下重启apache,tomcat1,tomcat2
5. 测试Session复制
通过 http://localhost/TestCluster/test.jsp 访问输入名称为 name, 值为 Unmi提交查询多刷新几次浏览器窗
口你将会看到在两个Tomcat窗口都打印出相同SessionID及其中值并且每次刷新后打印结果都样
如果不为应用web.xml加上 同样测试上面那个test.jsp页面每次刷新分流到区别tomcat上都会产生不样
SessionID,在同个tomcat上也是间隔出现区别sessionID
更切身体验是定要自己动手配置遍并仔细观察两个tomcat控制上输出因本文是参考 轻松实现
Apache,Tomcat集群和负载均衡 实战经历该本中有较多贴图
后记:
用 WebSphere Application Server ND 版配置过垂直和水平集群但是自己试验集群环境下应用却不想搬弄这
个庞然大物眼下急于想体验就是 Quartz 如何适应集群环境问题焦点就是:Quartz 定时任务随 Web 应用启动而
Web 应用部署在集群环境中如何保证同时刻只有个同名任务例子在跑
所以会考虑用Apache+Tomcat配置个轻量级WEB应用集群般进行HTTP分流都是使用Apache,包括WAS集群
也是很少用IIS虽然单纯用Tomcatbalancer应用也能配置进行负载分流但那个性能应该好不到哪儿去
用Apache+Tomcat配置Web应用集群就是部署起来麻烦些总是要保持双份应用拷贝WAS集群则不需要不知道
Jboss做WEB应用集群是如何样种情况
好了下面要进行该做事情了,最后也希望能写个工具能完成从下载到安装配置启动停止重启全自动化以及界面人性化。
一:软件Software环境
Apache: apache 2.0.55 (由http://httpd.apache.org/进入下载)(点击下载apache 2.0.55)
2. Tomcat: Tomcat 5.5.25 (由http://tomcat.apache.org/进入下载)(点击下载Tomcat 5.5.25 zip版)
3. mod_jk: 在页面 http://tomcat.apache.org/ Download 标题下找到 Tomcat Connectors 链接进入( 点击
下载mod_jk-apache-2.0.55.so)看起来像是个Unix/Linux下动态库实际应是个Win32 DLL 动态库大概是为保
持区别平台配置致性才用了这个扩展名
二:负载均衡
用Apache进行分流把请求按照权重以及当时负荷分tomcat1,tomcat2...去处理
1. 安装apache,tomcat
我把Apache安装在D:\Apache Group\Apache2
解压两分Tomcat, 分别在 D:\Apache Group\Tomcat5_1D:\Apache Group\Tomcat5_2
如果把区别版本Tomcat进行集群目录就可用Tomcat4_3(版本为4.x第 3个tomcat服务器)Tomcat6_4(版本为
6.x第 3个tomcat服务器),这是Unmi本人习惯
2.修改Apache配置文件http.conf
在apache安装目录下conf目录中找到http.conf在文件最后加上下面句话就可以了
conf\mod_jk.conf
3. http.conf 同目录下新建mod_jk.conf文件内容如下
#加载mod_jkModule
LoadModulejk_modulemodules/mod_jk-apache-2.0.55.so
#指定workers.properties文件路径
JkWorkersFileconf/workers.properties
#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定负载分配控制器
JkMount/*.jspcontroller
#加载mod_jk Module
LoadModule jk_module modules/mod_jk-apache-2.0.55.so
#指定 workers.properties文件路径
JkWorkersFile conf/workers.properties
#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定负载分配控制器
JkMount /*.jsp controller 如果还要指定*.do也进行分流就再加行
JkMount /*.do controller
如果你想对所有请求进行分流只需要写成
JkMount /* controller
4. 在http.conf同目录下新建 workers.properties文件内容如下(可能要去除 # 不在行首注释)
worker.list=controller,tomcat1,tomcat2#server列表
#tomcat1
worker.tomcat1.port=8009#ajp13端口号在tomcat下server.xml配置,默认8009
worker.tomcat1.host=localhost#tomcat主机地址如不为本机请填写ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor=1#server加权比重值越高分得请求越多
#tomcat2
worker.tomcat2.port=8109#ajp13端口号在tomcat下server.xml配置,默认8009
worker.tomcat2.host=localhost#tomcat主机地址如不为本机请填写ip地址
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor=2#server加权比重值越高分得请求越多
#controller,负载均衡控制器
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2#指定分担请求tomcat
worker.controller.sticky_session=1
worker.list = controller,tomcat1,tomcat2 #server 列表
#tomcat1
worker.tomcat1.port=8009 #ajp13 端口号在tomcat下server.xml配置,默认8009
worker.tomcat1.host=localhost #tomcat主机地址如不为本机请填写ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1 #server加权比重值越高分得请求越多
#tomcat2
worker.tomcat2.port=8109 #ajp13 端口号在tomcat下server.xml配置,默认8009
worker.tomcat2.host=localhost #tomcat主机地址如不为本机请填写ip地址
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 2 #server加权比重值越高分得请求越多
#controller,负载均衡控制器
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2 #指定分担请求tomcat
worker.controller.sticky_session=1 5. 修改tomcat配置文件server.xml
如果你是水平集群即在区别电脑上安装tomcat,tomcat安装数量为个可以不必修改tomcat配置文件.我这里是在
同台电脑上安装两个tomcat,实现是垂直集群方式所以必须修改其中个设置以避免端口冲突按照参考文章是把原
来以9开头端口号改为以9开头端口号但是在我机器上如果以9开头端口号例如9080、9082会和我WebSphere
Application Server配置冲突所以我这里采取策略是把原来端口号第 3位改为1如8080改为8180
打开tomcat2/conf/server.xml文件
1) 将关闭Tomcat监听端口改成由8005改为8105
即把
<Server port="8005" shutdown="SHUTDOWN">
改为
<Server port="8105" shutdown="SHUTDOWN">
2) 把http服务端口号由8080改为8180
找到
<!-- Define a non-SSL HTTP/1.1 Connector _disibledevent=>把这里8080改为8180
3) 把AJP端口号由8009改为8109
找到
<!-- Define an AJP 1.3 Connector _disibledevent=>把这里8009改为8109
4) 把 HTTP 代理端口从8082改为8182(这个配置默认是被注释掉可跳过这步)
找到
<CONNECTOR port="8082"
把这里8082改为8182
5) 编写个测试 jsp
建立个目录TestCluster里面新建个test.jsp,内容为
CodeViewCopyPr
<%
.out.prln("=");
%>
<%
.out.prln("=");
%>
把TestCluster放到tomcat1,tomcat2webapps下
6) 启动apache,tomcat1,tomcat2,进行测试
通过 http://localhost/TestCluster/test.jsp 访问多刷新几次页面查看Tomcat1和Tomcat2窗口你将可以看到
打印了行行"="并且从统计上来说大约在tomcat2打印数量是在Tomcat1中两倍可以看到请求会被
tomcat1,tomcat2按照区别权重分流处理,实现了负载均衡
作下面集群配置请在workers.properties把tomcat1和tomcat2权重改为样使请求较平均分配将有便于看到实
验效果
3:配置集群
只配置负载均衡还不行还要session复制也就是说其中任何个tomcat添加session是要同步复制到其它tomcat
集群内tomcat都有相同session
1. 修改tomcat1, tomcat2server.xml,将集群部分配置即对<Cluster>节点在注释符删掉,并将tomcat24001端
口改为4002以避免和tomcat冲突当然如果是两台电脑是不用改端口去掉注释符即可
即取消对如下处
<ClusterName="org.apache.catalina.cluster.tcp.SimpleTcpCluster"
managerClassName=
"org.apache.catalina.cluster.session.DeltaManager"
expireSessionsOnShutdown="false"
............
<ClusterListenerName="org.apache.catalina.cluster.session.ClusterSessionListener"/>
</Cluster>
<Cluster Name="org.apache.catalina.cluster.tcp.SimpleTcpCluster"
managerClassName="org.apache.catalina.cluster.session.DeltaManager"
expireSessionsOnShutdown="false"
............
<ClusterListener Name="org.apache.catalina.cluster.session.ClusterSessionListener"/>
</Cluster>
前后注释标记<!-- -->启用该项配置实现服务器间Session复制
2. 为 Tomcat1和 Tomcat2 增加 jvmRoute(先跳过这步有精力可以试验下)
在 Tomcat1 和 Tomcat2 server.xml 文件找到
<ENGINE name="Catalina" defaultHost="localhost">
分别改为
<ENGINE name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">
和
<ENGINE name="Catalina" defaultHost="localhost" jvmRoute="tomcat2">
然而实际我配置时候还不能加jvmRoute属性配置了反而有问题
刷新浏览器窗口总是在某个tomcat控制台输出形如
SessionID:154678FA6D4D0ABD57658B750E7A3532.tomcat1 (在tomcat1窗口)
或者
SessionID:3800571A532AECEA7280F45361861AD4.tomcat2 (在tomcat2窗口)
由控制台打印结果可以看出SessionID在哪个tomcat上产生那么后续该会话请求将总是会这个tomcat来处理
并且注意到SessionID形式比通常情况多了个后缀.tomcat1或.tomcat2还搞不清楚是为什么
配置时请视实际情况而取舍
3. 修改测试项目 TestCluster
修改test.jsp,内容如下
<%@pagecontentType="text/html;char=GBK"%>
<%@pageimport="java.util.*"%>
<html><head><title>ClusterAppTest</title></head>
<body>
<%
.out.prln("SessionID:"+session.getId);
%>
ServerInfo:
<%
out.prln(request.getServerName+":"+request.getServerPort+"<br>");%>
<%
out.prln("<br>ID"+session.getId+"<br>");//如果有新Session属性设置
StringdataName=request.getParameter("dataName");
(dataName!=null&&dataName.length>0){
StringdataValue=request.getParameter("dataValue");
session.Attribute(dataName,dataValue);
}
out.pr("<b>Session列表</b><br>");
Enumeratione=session.getAttributeNames;
while(e.hasMoreElements){
Stringname=(String)e.nextElement;
Stringvalue=session.getAttribute(name).toString;
out.prln(name+"="+value+"<br>");
.out.prln(name+"="+value);
}
%>
<formaction="test.jsp"method="POST">
名称:<inputtype=textsize=20name="dataName">
<br>
数值:<inputtype=textsize=20name="dataValue">
<br>
<inputtype=submit>
</form>
</body>
</html>
<%@ page contentType="text/html; char=GBK" %>
<%@ page import="java.util.*" %>
<html><head><title>Cluster App Test</title></head>
<body>
<%
.out.prln("SessionID:" + session.getId);
%>
Server Info:
<%
out.prln(request.getServerName + " : " + request.getServerPort+"<br>");%>
<%
out.prln("<br> ID " + session.getId+"<br>"); // 如果有新 Session 属性设置
String dataName = request.getParameter("dataName");
(dataName != null && dataName.length > 0) {
String dataValue = request.getParameter("dataValue");
session.Attribute(dataName, dataValue);
}
out.pr("<b>Session 列表</b><br>");
Enumeration e = session.getAttributeNames;
while (e.hasMoreElements) {
String name = (String)e.nextElement;
String value = session.getAttribute(name).toString;
out.prln( name + " = " + value+"<br>");
.out.prln( name + " = " + value);
}
%>
<form action="test.jsp" method="POST">
名称:<input type=text size=20 name="dataName">
<br>
数值:<input type=text size=20 name="dataValue">
<br>
<input type=submit>
</form>
</body>
</html> 4. 配置Session复制
<web-appxmlns="http://java.sun.com/xml/ns/j2ee"xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://java.sun.com/xml/ns/j2ee/webapp_
2_4.xsd"version="2.4">
<display-name>TomcatClusterDemo</display-name>
<distributable/>
<web-app>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/webapp_
2_4.xsd" version="2.4">
<display-name>TomcatClusterDemo</display-name>
<distributable/>
<web-app> 也就是在需要集群应用web.xml中加上属性表明该应用可多应用分流处理能进行Session复制
把TestCluster复制到Tomcat1、Tomcat2webapps目录下重启apache,tomcat1,tomcat2
5. 测试Session复制
通过 http://localhost/TestCluster/test.jsp 访问输入名称为 name, 值为 Unmi提交查询多刷新几次浏览器窗
口你将会看到在两个Tomcat窗口都打印出相同SessionID及其中值并且每次刷新后打印结果都样
如果不为应用web.xml加上 同样测试上面那个test.jsp页面每次刷新分流到区别tomcat上都会产生不样
SessionID,在同个tomcat上也是间隔出现区别sessionID
更切身体验是定要自己动手配置遍并仔细观察两个tomcat控制上输出因本文是参考 轻松实现
Apache,Tomcat集群和负载均衡 实战经历该本中有较多贴图
后记:
用 WebSphere Application Server ND 版配置过垂直和水平集群但是自己试验集群环境下应用却不想搬弄这
个庞然大物眼下急于想体验就是 Quartz 如何适应集群环境问题焦点就是:Quartz 定时任务随 Web 应用启动而
Web 应用部署在集群环境中如何保证同时刻只有个同名任务例子在跑
所以会考虑用Apache+Tomcat配置个轻量级WEB应用集群般进行HTTP分流都是使用Apache,包括WAS集群
也是很少用IIS虽然单纯用Tomcatbalancer应用也能配置进行负载分流但那个性能应该好不到哪儿去
用Apache+Tomcat配置Web应用集群就是部署起来麻烦些总是要保持双份应用拷贝WAS集群则不需要不知道
Jboss做WEB应用集群是如何样种情况
好了下面要进行该做事情了,最后也希望能写个工具能完成从下载到安装配置启动停止重启全自动化以及界面人性化。