免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1039 | 回复: 0
打印 上一主题 下一主题

整合 apache2.2 tomcat5.5 proxy (四) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-11-17 10:45 |只看该作者 |倒序浏览
在企业级应用中,采用Tomcat作为应用服务器的系统不在少数,但是Tomcat作为轻量级应用服务器,它的负载能力确实有限,在系统上线后不堪重负,这时候人们都会想起集群来,可惜以往的版本做起集群来,实在不方便得很。
       Tomcat5.5在这方面作了很大的改进,我们首先可以实现Tomcat5.5的集群。
一、配置Tomcat
1、直接将下载的apache-tomcat-5.5.17.zip解压缩到一个驱动器根目录下,将目录名改为Tomcat5517_S1,作为集群的第一个Tomcat服务器。
2、删除Tomcat5517_S1\ webapps、Tomcat5517_S1\temp下的所有内容。
3、在Tomcat5517_S1\conf\Catalina\localhost下建立ROOT.xml文件(注意:一定要用ROOT.xml这个文件名)。添加内容:
     
     WEB-INF/web.xml
4、确认你的应用发布没有问题的情况下,运行Tomcat5517_S1\bin中的Startup.bat。
5、在浏览器中访问:
http://localhost:8080
,你的应用应该可以在此Tomcat中成功发布了。
这里要注意的是:
如果你的系统中使用了Taglib尤其是c.tld,请下载最新版本的jakarta-taglibs-standard-1.1.2.zip,从中取得standard.jar、jstl.jar和c.tld,放在相应的目录下,然后修改web.xml:
其中所有的
   
     /WEB-INF/struts-html.tld
     /WEB-INF/struts-html.tld
   
要放在元素中,像这样:
   
      /WEB-INF/struts-template.tld
      /WEB-INF/struts-template.tld
   
   
/WEB-INF/c.tld
/WEB-INF/c.tld
   
   二、配置同一台机器中的Tomcat集群
1、将Tomcat5517_S1\ Catalina文件夹改名为Tomcat5517_S1\ Standalone,然后打开Tomcat5517_S1\conf\server.xml,修改几个关键的地方。
★ 远程关闭Tomcat的服务端口,原来是8005,改为10005。
★ 两个对外服务的Connector的端口:Http协议端口原来是8080,改为10001;AJP1.3协议端口原来是8009,改为10009。(这里要注意的是在开始的调试阶段我们保持http协议端口的打开状态,用于浏览器直接与此Tomcat连接,等到调试成功后,所有的客户端只允许通过 apache访问,我们就要将提供Http协议的Connector关掉。)其中的redirectPort我都改成了10043。
★ 将原来的:注释掉,打开它上面的:,并且将jvmRoute的值改为Tomcat1。
★ 打开Cluster元素的注释,并且将Receiver元素的监听端口tcpListenPort改为10011。
2、修改Web.xml,加上,如下:

然后启动此Tomcat,可以看到有这样的提示信息:
2006-6-28 13:33:57 org.apache.catalina.cluster.tcp.SimpleTcpCluster start
信息: Cluster is about to start
2006-6-28 13:33:57 org.apache.catalina.cluster.tcp.ReplicationTransmitter start
信息: Start ClusterSender at cluster Standalone:type=Cluster,host=localhost with name Standalone:type=ClusterSender,host=localhost
2006-6-28 13:33:57 org.apache.catalina.cluster.mcast.McastService start
信息: Sleeping for 2000 milliseconds to establish cluster membership
2006-6-28 13:33:59 org.apache.catalina.cluster.mcast.McastService registerMBean
信息: membership mbean registered (Standalone:type=ClusterMembership,host=localhost)
2006-6-28 13:33:59 org.apache.catalina.cluster.deploy.FarmWarDeployer start
信息: Cluster FarmWarDeployer started.
2006-6-28 13:34:30 org.apache.coyote.http11.Http11BaseProtocol start
信息: Starting Coyote HTTP/1.1 on http-10001
2006-6-28 13:34:30 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:10009
2006-6-28 13:34:30 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/141   config=null
这表示Tomcat集群正常启动了。
3、复制Tomcat5517_S1文件夹,并更名为Tomcat5517_S2;然后修改Tomcat5517_S1\conf\server.xml,修改内容同上,要注意的是端口的修改:
★ 远程关闭Tomcat的服务端口,原来是8005,改为20005。
★ 两个对外服务的Connector的端口:Http协议端口原来是8080,改为20001;AJP1.3协议端口原来是8009,改为20009。其中的redirectPort我都改成了20043。
★ 将原来的:注释掉,打开它上面的:,并且将jvmRoute的值改为Tomcat2。
★ 打开Cluster元素的注释,并且将Receiver元素的监听端口tcpListenPort改为20011。
启动Tomcat2,可以看到有如下提示:
在Tomcat1中:
2006-6-28 14:25:46 org.apache.catalina.cluster.tcp.SimpleTcpCluster memberAdded
信息: Replication member added:org.apache.catalina.cluster.mcast.McastMember[tcp://192.168.1.192:20011,catalina,192.168.1.192,20011, alive=40]
在Tomcat2中:
2006-6-28 14:25:44 org.apache.catalina.cluster.tcp.SimpleTcpCluster memberAdded
信息: Replication member added:org.apache.catalina.cluster.mcast.McastMember[tcp://192.168.1.192:10011,catalina,192.168.1.192,10011, alive=3105085]
这表示两个Tomcat已经建立了集群,并保持Session同步了。 三、配置Apache
Apache2.2提供了最新的mod_proxy_balancer模块,这是我们这次实践过程中完成负载均衡的利器。安装完Apache之后,直接打开conf\httpd.conf文件:
★ 打开必要的模块:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_http_module modules/mod_proxy_http.so
★ 在httpd.conf的最后加上:
ProxyRequests Off
ProxyPass / balancer://myCluster/
        BalancerMember ajp://localhost:10009 route=Tomcat1
        BalancerMember ajp://localhost:20009 route=Tomcat2
然后启动apache,开始测试你的应用在集群环境下的表现

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/31839/showart_2096521.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP