Tomcat:利用Apache配置反向代理、负载均衡
本篇主要介绍apache配置反向代理,介绍了两种情况:第一种是,只使用apache配置反向代理;第二种是,apache与应用服务器(tomcat)结合,配置反向代理,同时了配置了负载均衡。
准备工作
1、 2 个tomcat实例
2、 安装Apache server2.2
基于apache server配置反向代理
在这个配置中,只在apache server中配置,不需要在tomcat中配置。
1) ${apacheserver}/conf/extra/httpd-vhosts.conf在配置一个使用反向代理的虚拟主机
<VirtualHost *:80>
ServerAdmin test@test.com
ServerName www.test.com
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /examples http://192.168.1.250:8080/examples ProxyPassReverse /examples http://192.168.1.250:8080/examples </VirtualHost>
这里是在apache中配置了一个虚拟主机:
端口是80
ServerAdmin:是邮箱地址
ServerName:是hosts文件中配置的域名
ProxyPass /examples http://192.168.1.250:8080/examples 是表示访问http://www.test.com/test 下的资源时,都使用配置的这个Prxoy。
http://192.168.1.250:8080/是你的一个tomcat 实例的访问地址。
2)在${apacheserver}/conf/httpd.conf 文件中做如下配置
LoadModule proxy_module modules/mod_proxy.so和 LoadModule proxy_http_module modules/mod_proxy_http.so前的注释去掉
这个配置的目的是让apache启动时加载proxy相关模块
把Include conf/extra/httpd-vhosts.conf前页的注释去掉
这个配置的目的是:让apache启动时加载虚拟主机配置
基于apache server + tomcat 配置反向代理和负载均衡
1、配置2个tomcat实例
1)调整它们的端口(shutdown,http或者ajp)
2)指定route
<Engine name="Catalina" defaultHost="localhost" jvmRoute="worker1">
两个tomcat实例,一个是worker1,一个是worker2。后面配置apache时要用到。
2、Apache上配置Proxy
1) 加载相关代理模块
既然要使用代理方式访问,肯定要有代理模块才行的。在${apacheserver}/config/http.conf中做如下配置:
启用proxy的命令是:
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_balancer_module modules/mod_proxy_balancer.so LoadModule proxy_http_module modules/mod_proxy_http.so

如果要配置AJP协议,要mod_proxy_ajp.so前面的#去掉。
2)定义反向代理和负载均衡

配置的源码是:
<IfModule proxy_balancer_module>
# define a Load Balance Proxy based HTTP protocol
<IfModule proxy_http_module>
<Proxy balancer://myHttpLB>
BalancerMember http://localhost:18080/examples loadfactor=80 route=worker1
BalancerMember http://localhost:28080/examples loadfactor=20 route=worker2
</Proxy>
ProxyRequests off
ProxyPass /examples balancer://myHttpLB/ stickySession=JSESSIONID nofailover=Off
ProxyPassReverse /examples balancer://myHttpLB/
</IfModule>
# define a Load Balance Proxy based AJP protocol
<IfModule proxy_ajp_module>
<Proxy balancer://myAjpLB>
BalancerMember ajp://localhost:18080/examples loadfactor=80 route=worker1
BalancerMember ajp://localhost:28080/examples loadfactor=20 route=worker2
</Proxy>
ProxyRequests off
ProxyPass /examples balancer://myAjpLB/ stickySession=JSESSIONID nofailover=Off
ProxyPassReverse /examples balancer://myAjpLB/
</IfModule>
</IfModule>
上面的配置中,根据加载的模块启动了两个具有负载均衡功能的反向Proxy,一个是基于HTTP协议的,一个 是基于AJP协议的。
下面对HTTP协议的做一个说明:
<Proxy balancer://myHttpLB>
BalancerMember http://localhost:18080/examples loadfactor=80 route=worker1
BalancerMember http://localhost:28080/examples loadfactor=20 route=worker2
</Proxy>
这是定义一个Proxy,这个Proxy启用了负载均衡,名称是balancer://myHttpLB
有两个成员:worker1和worker2。权重分别为80、20。
ProxyPass /examples balancer://myHttpLB/ stickySession=JSESSIONID nofailover=Off
在访问http://apacheServerIp:port/examples 下的资源时,由交给负载均衡balancer://myHttpLB/ 来处理。这个配置表示:
stickySession 表示启用粘性会话。
Nofailover用于配置故障转移的。
ProxyPassReverse /examples balancer://myAjpLB/
用于调整由反向代理服务器发送的HTTP回应头中的URL
如果对ProxyPass配置中还有不理解的地方,可以参考 http://blog.chinaunix.net/uid-13328647-id-2902236.html
3)测试
访问http://localhost/examples。
examples是tomcat/webapps下的应用,所以肯定是可以访问到的。
Tomcat:利用Apache配置反向代理、负载均衡的更多相关文章
- Linux系统中使用Nignx配置反向代理负载均衡
目录 使用nginx实现动静分离的负载均衡集群 使用nginx实现负载均衡和动静分离 使用nginx实现动静分离的负载均衡集群 Nginx官网源码包下载链接:http://nginx.org/en/d ...
- (转)Apache实现反向代理负载均衡
说到负载均衡LVS这套技术,有很多种实现方法. 本文所说,主要就是利用apache服务器实现反向代理,实现负载均衡. 首先,传统的正向代理如下图所示,正如我们用的游戏加速代理,大多的个人PC把请求发给 ...
- nginx ----> nginx配置/反向代理/负载均衡
nginx [engine x]是一个HTTP和反向代理服务器,一个邮件代理服务器和一个通用的TCP/UDP代理服务器,最初由Igor Sysoev编写. 环境: Ubuntu16.04 安装ngin ...
- Apache配置反向代理、负载均衡和集群(mod_proxy方式)
Apache配置负载均衡和集群使用mod_jk的方式比较多,但是mod_jk已经停止更新,并且配置相对复杂.Apache2.2以后,提供了一种原生的方式配置负载均衡和集群,比mod_jk简单很多. 1 ...
- Nginx 反向代理 负载均衡 虚拟主机配置
Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代理服务器的作用,区分正向代理和反向代理的区别,搭建使用Nginx反向搭理和负载均衡,了解Nginx常 ...
- 【转】Nginx 反向代理 负载均衡 虚拟主机配置
原文:http://www.cnblogs.com/itdragon/p/8059000.html Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代 ...
- 反向代理负载均衡之APACHE
反向代理负载均衡之APACHE 一.反向代理1.1 介绍反响代理 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将 ...
- Centos7.4 Nginx反向代理+负载均衡配置
Ningx是一款高性能的HTTP和反向代理服务器,配置起来也比较简单. 测试环境: 172.16.65.190 Nginx-反向代理 172.16.65.191 Ningx-Web 172.16.65 ...
- 如何使用Weave以及Docker搭建Nginx反向代理/负载均衡服务器
Hi, 今天我们将会学习如何使用 Weave 和 Docker 搭建 Nginx 的反向代理/负载均衡服务器.Weave 可以创建一个虚拟网络将 Docker 容器彼此连接在一起,支持跨主机部署及自动 ...
随机推荐
- SharePoint 2013 托管导航 无法被开启的解决办法
在阅读了园子中霖雨的一片博文<SharePoint 2013 托管导航及相关配置>之后,非常想尝试一下SharePoint 2013 中的这个新功能,但是我的网站集包括样式是从2010升级 ...
- 1Z0-053 争议题目解析46
1Z0-053 争议题目解析46 考试科目:1Z0-053 题库版本:V13.02 题库中原题为: 46.What happens when you run the SQL Tuning Adviso ...
- 从底层开发谈WebGIS中实现地理长度固定的可视窗口的思路和方法
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.具体问题 在公司某边界城市的项目中,对方提出因为自己的地图安全度要 ...
- WebGIS开源方案中空间数据的入库、编辑、发布的操作流程
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.前言 本开源方案的构架是:geoserver(服务器)+tomca ...
- 汽车之家一道SQL 面试题,大家闲来无事都来敲一敲
写在前面 上周去汽车之家面试,拿到这个SQL笔试题顿时感觉到有些陌生,因为好长时间不写SQL语句了,当时只写了表设计,示例数据和SQL语句都没写出来. 汽车之家应该用的SQL Server, 编程题一 ...
- 大型网站提速关键技术(页面静态化,memcached,MySql优化)(二)
一:页面静态化 几个概念: 静态网址:(比如:http://localhost/abc.html) 特点:1.利用seo(search engine optimization) 搜索引擎优化;2:访问 ...
- 疯狂Android讲义 - 学习笔记(三)
Android的事件处理 3.1 Android提供了两套事件处理机制:基于监听的事件处理.基于回调的事件处理. 3.2 基于监听的事件处理 3.2.1 监听的处理模型 主要涉及三类对象:Event ...
- 使用pyinstaller打包Python应用,生成EXE执行文件
在命令行中切换到要打包的程序所在目录,或者在程序目录打开命令行,直接输入下面的指令即可pyinstaller -F xxx.py pyinstaller -F -w -i manage.ico app ...
- 在DirectShow中支持DXVA 2.0(Supporting DXVA 2.0 in DirectShow)
这几天在做dxva2硬件加速,找不到什么资料,翻译了一下微软的两篇相关文档.并准备记录一下用ffmpeg实现dxva2,将在第三篇写到.这是第二篇.,英文原址:https://msdn.microso ...
- 【JAVA并发编程实战】7、日志服务
这里是一个应用项目使用生产消费模型的日志类 package cn.study.concurrency; import java.util.concurrent.BlockingQueue; impor ...