准备工作
Windows Server 2008 R2 Enterprise(2.40GH,8GB,64Bit,192.168.10.212)
2台Ubuntu 10.04.4(192.168.10.98,192.168.10.137)
JDK1.7.80
Tomcat7.0.68
Apache2.4.4
1.安装Apache2.4.4
安装过程中没什么注意事项,一直Next就行了。安装完成后默认开启Apache服务,可以在浏览器上输入localhost或者127.0.0.1,这时候会出现It works的字样
2.Java环境
在Ubuntu上的配置网上很多我就不多讲了,但是记得配置JAVA_HOME和PATH
3.Tomcat安装
直接解压在目录中就好了,我的目录在/opt/tomcat7/,在两台Ubuntu上都解压。可能会遇到权限不足的问题,这时候就要敲命令啦,最简单粗暴的,莫过于sudo chmod 777 目录,鉴于安全问题,各位还是妥善地进行授权,这就不提了。
开始配置
Apache的配置
1.首先打开一些必要的Module注释(把前面的#号去掉就行),在conf/httpd这个文件中
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_connect_module modules/mod_proxy_connect.so LoadModule slotmem_shm_module modules/mod_slotmem_shm.so LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
这里我提一下最后两个个,我当时只打开了前面几个,结果Apache一直启动不起来
看了看日志发现一直在报Failed to lookup provider ‘shm' for ‘slotmem': is mod_slotmem_shm loaded"htmlcode">
<VirtualHost *:80> ServerAdmin 502053382@qq.com ProxyPass / balancer://cluster/ stickysession=JSESSIONID|jsessionid nofailover=On ProxyPassReverse / balancer://cluster/ ServerName 192.168.10.212 ErrorLog "logs/error.log" CustomLog "logs/access.log" common </VirtualHost> ProxyRequests Off <proxy balancer://cluster> BalancerMember ajp://192.168.10.98:8009 loadfactor=1 route=jvm1 smax=5 max=20 ttl=120 retry=300 timeout=15 BalancerMember ajp://192.168.10.137:8009 loadfactor=1 route=jvm2 smax=5 max=20 ttl=120 retry=300 timeout=15 </proxy>
ProxyPass :将远程服务器映射到本地服务器的URL空间
balancer:// :代理的指令类型
stickysession : 均衡器粘连会话名称。该值常常会被设置为类似JSESSIONID或者 PHPSESSIONID之类的值,他依赖于支持会话的后端应用服务器。如 果后端服务器使用不同的cookie名称或者URL编码的ID(像servlet 容器),使用|来分开他们。第一个部分针对cookie,第二个针对路径。
nofailover : 如果设为‘On',当工作单元被禁用或者出错时,会话则立即中断。可以将 该值设为On如果后端服务器不支持会话复制(Session replication)。
ProxyRequests : 在使用ProxyPass指令的时候,ProxyRequests指令通常都应该是关闭 的。
BalancerMember : 均衡成员
loadfactor : 工作单元负载系数。用于BalancerMember。它是一个1到100之间的数 字,用于定义应用于该工作单元的正规化权重负载。
route : 工作单元的路由,用于负载均衡器中。该路由是附加给会话ID的一个值。
smax : 根据需要最多创建数量为柔性最大值(Soft Maximum),也就是smax的链接。 任何超出smax数量的链接都会指定一个生存时间也就是ttl。
max : 默认值为当前MPM中每个进程的线程数量。在Prefork MPM中,该值总是为 1,在Worker MPM中,该值受ThreadsPerChild控制。
ttl : 超出smax连接数的非活动链接的生存时间(Time To Live),单位为秒。Apache 会关闭在这段时间内没有被用过的所有链接。
retry : 线程池工作单元重试的超时时间,以秒为单位。如果到后端服务器的线程池工 作单元状态是出错,Apache将不会递交任何请求到该服务器,直到超时结束。 这可以令后端服务器关闭进行维护,并稍后上线。如果值为0则表示总是重试 错误状态的工作单元不等待任何时间。
timeout : 链接超时时间,单位为秒。如果未设置,那么Apache会一直等到有可用的链接 位置。该指令常和max参数一起使用来限制到后端服务器的链接。
这样就差不多配置完了,重启Apache服务就可以了。
注意:当输入localhost或者127.0.0.1的时候已经不会出现It works的字样,而是会报503错误,这是正常的,因为现在Apache已经开起了负载均衡的功能,已经通过AJP导向对象IP上的Tomcat,只是Tomcat还没有启动过。
Tomcat的配置
以192.168.10.98这台服务器为例
使用Vim打开conf下面的server.xml(不会Vim的请自行脑补╮(╯▽╰)╭)。这里介绍的负载均衡,是Apache通过AJP协议与Tomcat进行衔接,所以在Apache中配置的端口号是Tomcat中AJP的端口号。
此外,需要在Engine中配置jvmRoute
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
这里的jvmRoute对应的是Apache中的route。(我刚才把这个去掉不配置,发现竟然也可以,觉得很神奇,但应该是要配置。)
最后还要将
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
这个注释打开
至此,配置已经完成。同理在192.168.10.137上也这样配置。
编写一个小小的测试用的test.jsp
<%@ page contentType="text/html;charset=UTF-8" %> <%@ page import="java.util.*"%> <html> <head> <title>ApacheTomcatTest</title> </head> <body> <% out.println("<br> SESSION ID:" + session.getId() + "</br>"); %> </body> </html>
在Tomcat的webapps目录下面创建一个balance文件夹,将test.jsp放在该文件夹下面,启动Tomcat
最后在浏览器中输入192.168.10.212/balance/test.jsp
会发现SESSION ID的值一直在两个数字之间变换
这就是负载均衡的体现了。当然,输入192.168.10.212出现的也不会是It works,而是经典的Tomcat首页。
对了,以上是基于三台服务器的
更多关于Apache+Tomcat7负载均衡配置方法请点击下面的相关链接
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新动态
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]