设为首页 收藏本站
查看: 1007|回复: 0

[经验分享] Linux下Apache+Tomcat 负载均衡

[复制链接]

尚未签到

发表于 2018-11-26 10:49:23 | 显示全部楼层 |阅读模式
  众所周知,Apache处理动态页面的能力非常稳定,而且由于apache发展早,社区活跃,Linux SA青睐使用Apache来均衡Tomcat,处理JSP动态语言。
  而我们熟知的Nginx Web服务器则是处理静态能力非常强悍的WEB服务器,最近又有一种新的架构性能也很强劲(Linux+Nginx+Apache+Mysql+PHP),有时间可以一起探讨。
  今天我们来学习Apache+tomcat如何来整合,此架构已用于线上。
  一、系统版本:
Centos 5.3 64位系统
Nginx版本为:httpd-2.2.13.tar.bz2   
Jdk版本为:1.6.0_18
Tomcat版本为:Apache Tomcat/6.0.30  二、安装Apache:
cd /usr/src && tar -jxvf httpd-2.2.13.tar.bz2
cd httpd-2.2.13/srclib/apr &&./configure --prefix=/usr/local/apr &&make &&make install
cd ../apr-util/ && ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make&&make install
cd ../../ && ./configure --prefix=/usr/local/apache2 --enable-mods-shared=all --with-mpm=worker --enable-deflate --enable-cache --enable-disk-cache --enable-mem-cache --enable-file-cache --enable-proxy --enable-proxy-ajp --enable-proxy-balancer --enable-proxy-http --enable-rewrite  --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util      注*这里安装mod_proxy处理Tomcat jsp页面模块,安装apr、apr-util增加Tomcat处理性能,当然也可以用mod_jk的方式,如果是mod_jk的方式的话,可以参考这篇文章:
http://bbs.linuxtone.org/thread-1195-1-1.html  三、Tomcat安装配置:
      安装Tomcat之前需要安装JAVA JDK,chmod o+x jdk* && ./jdk* ;程序包会提示按回车键,我们根据提示安装即可,解压完毕,会在当前目录生成 jdk1.6.0_18 文件夹,如果jdk是tar文件,可以执行tar -xzf jdk.xxx.tar.gz 解压,然后移动到/usr/java/下:
mkdir -p /usr/java && mv jdk1.6.0_18 /usr/java/下  
#vi /etc/profile 最后面加入以下语句:  
export JAVA_HOME=/usr/java/jdk1.6.0_18  
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib  
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin  
#source /etc/profile //使环境变量马上生效  
java --version //查看java版本,显示版本是1.6.0_18,并且是64位的证明安装成功!  
Java HotSpot(TM) 64-Bit Server VM (build 16.0-b10, mixed mode)      然后解压tomcat软件包:
cd /usr/src && tar xzf apache-tomcat-6.0.30.tar.gz  
mv apache-tomcat-6.0.30 /usr/local/tomcat1
cp -r /usr/local/tomcat1 /usr/local/tomcat2
#1.分别给两个tomcat创建发布目录
mkdir -p /usr/webapps/{www_1,www_2}  
#2.修改Tomcat1的 server.xml文件如下内容,设置route ID:

#3.然后在前面加入如下内容,设置自定义发布目录:  

#4.同样的道理设置tomcat2:  


#5.分别设置两个tomcat的jvmroute名称为tomcat1和tomcat2,一会跟apache整合会用到。  四、整合Apache+Tomcat:
  在vi /usr/local/apache2/conf/vhosts.conf添加如下内容:(新建)
NameVirtualHost *:80  

   ServerAdmin wgkgood@163.com  
   DocumentRoot "/usr/webapps/www"  
   ServerName  192.168.2.79  

      AllowOverride None  
      Options None  
      Order allow,deny  
      Allow from all  

   ProxyRequests Off  
   RewriteEngine On  
   ProxyPreserveHost On  
   RewriteRule ^$ balancer://wwwCluster/ [P,L,NC]  
   RewriteRule ^/(.*)$ balancer://wwwCluster/$1 [P,L,NC]  

   BalancerMember ajp://localhost:8411  route=tomcat1
   BalancerMember ajp://localhost:8412  route=tomcat2

      如上,8411和8412是两个tomcat的AJP端口,可以根据实际情况修改,这样的话,所有配置都完毕了!启动apache ok!
      在两个tomcat发布目录分别创建index.jsp文件,Tomcat1内容如下:


TOMCAT_1 JSP Test Page


  Tomcat1内容如下:


TOMCAT_2 JSP Test Page


      然后直接访问 http://192.168.2.79 ,会出现两个tomcat发布的不同页面,则表示Apache+Tomcat整合完毕!
      附:如果要测试tomcat性能,使用LoadRunner,开启Tomcat Jconsole连接配置:
JAVA_OPTS="-server -Xms2048m -Xmx2048m -Djava.library.path=/usr/local/apr/lib -XX:PermSize=256m -XX:MaxPermSize=256m -XX:NewSize=192m
-XX:MaxNewSize=384m -Xloggc:/usr/local/tomcat/logs/gc.out -Djava.rmi.server.hostname=192.168.0.18 -Dcom.sun.management.jmxremote.po
rt=10000 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-639757-1-1.html 上篇帖子: Apache Commons fileUpload实现文件上传 下篇帖子: apache htpasswd命令。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表