Apache使用mod_jk和mod_proxy反向代理tomcat
httpd通过mod_proxy或者mod_jk模块来对tomcat进行反向代理,而且其比Nginx的强大,Nginx的反向代理只能通过http协议进行代理,而apache既可以代理http协议,还可以代理ajp协议,而且mod_proxy 还可以实现session会话的绑定。mod_jk其开发就是对tomcat做反向代理的。
mod_jk与mod_proxy区别,请看文章:http://elf8848.iteye.com/blog/2166011
apache通过反向代理实现负载均衡(mod_proxy http协议)
关键需要加载下面三个模块
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
同理建立一个虚拟主机来作为负载均衡
vi /etc/apache2/sites_available/balancer
配置如下
Listen 202.x.xx.xxx:80 (别人访问的IP和端口)
<VirtualHost 202.x.xx.xxx:80>
ServerAdmin admin@bit.com
ProxyRequests Off (说明开启的是反向代理)
Proxypass / balancer://proxy/ (这里也可以直接写目标地址http://10.x.xx.xxx/,实现只做反向代理不实现负载均衡,下面的balancer://proxy就可以不要了)
<Proxy balancer://proxy>
Order Deny,Allow (访问的控制)
Allow from all
BalancerMember http://10.0.0.1
BalancerMember http://10.0.0.2
</Proxy>
</VirtualHost>
Apache配置tomcat负载(mod_proxy)和session粘连(stickysession)
http://wwwcomy.iteye.com/blog/1909211
apache通过反向代理实现负载均衡(mod_proxy ajp协议)(粘性Session)
首先,修改War包程序的web.xml文件,增加<distributable/>标识。
其次,修改每个Tomcat服务器的server.xml,配置jvmRoute
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
最后,修改apache的httpd.conf文件,增加如下内容
其中ProxyPass /images ! 表示/images开头的请求不会转发给Tomcat,而是作为静态资源在Apache的images目录下寻找资源文件。
而反向代理将所有的/Test请求都转发给名叫mycluster的balancer。
而这个balancer有两个Tomcat成员。
stickySession=JSESSIONID表示开启粘性Session。他的意思是如果第一次请求分到了worker1的Tomcat,那么这个用户的后续请求,都会分配给worker1的这个Tomcat。
然后在Apache配置故障转移(nofailover=Off)
配置了集群之后,请求从前端过来,假如分配到了worker1,那么因为粘性Session,他会一直访问worker1.
如果worker1宕机,这个用户的后续请求会自动转移到worker2.
由于Tomcat可配置Session复制,所以Session信息没有丢失。要重新登录 。
(Session复制的配置请查阅其它资料,要配置的东西不少)
负载分配算法
当然你可能想通过不同的算法实现负载均衡,比方说按照请求次数,或者按照流量均衡,这里用到的指令是lbmethod
lbmethod可能的取值有:
lbmethod=byrequests 按照请求次数均衡(默认)
lbmethod=bytraffic 按照流量均衡
lbmethod=bybusyness 按照繁忙程度均衡(总是分配给活跃请求数最少的服务器)
按照流量的均衡配置如下
Listen 202.x.xx.xxx:80 (别人访问的IP和端口)
<VirtualHost 202.x.xx.xxx:80>
ServerAdmin admin@bit.com
ProxyRequests Off
Proxypass / balancer://proxy/
ProxySet lbmethod=bytraffic (加上这句,若使用默认值,这句可不加)
<Proxy balancer://proxy>
Order Deny,Allow
Allow from all
BalancerMember http://10.0.0.1 loadfactor= 3
BalancerMember http://10.0.0.2 loadfactor= 1
</Proxy>
</VirtualHost>
这样你的负载均衡就可以按照流量均衡了
apache通过反向代理实现负载均衡(mod_jk ajp协议)
请参考:http://blog.csdn.net/hobbypei/article/details/8234933
相关推荐
### Apache反向代理与负载均衡深入解析 #### 引言 Apache是一款广泛使用的Web服务器软件,不仅能够处理静态页面,还支持动态内容处理,并具备多种高级功能,如反向代理和负载均衡。本文将深入探讨Apache反向代理与...
Apache反向代理是一种网络服务器配置技术,用于将客户端请求转发到后端服务器集群,从而实现负载均衡。在高流量网站或应用中,反向代理能够有效地分发流量,提高服务的稳定性和响应速度,同时也提供了更好的可扩展性...
### Apache反向代理知识点详解 #### 一、测试环境与网络结构 在开始之前,我们需要了解测试环境的具体配置。本文采用的是Redhat Linux 7.2操作系统,搭配Apache 1.3.24版本,假设公司的域名为company.com。网络...
linux apache反向代理配置,写的有点乱,但是可以用,里面有说明文档 先弄 apache和tomcat整合 把80端口给apache 举例 tomcatA 8080 tomcatB 8081 在apache的httpd.conf里写反向代理,用户名指向tomcat的端口,具体...
以上就是Apache反向代理WebLogic的基本步骤和关键知识点,通过这种方式,你可以构建一个高效、安全的Web应用架构。在实际部署中,还需要考虑更多的细节,如SSL证书配置、安全策略、性能调优等。
Apache负载均衡和反向代理配置文件开启的模块及代码配置方法。。。。。。。。。。。。。。。。。。。
### Apache反向代理及负载均衡部署详解 #### 一、Apache与IIS的反向代理和负载均衡背景 随着互联网应用的不断扩展和技术的发展,如何有效地处理大量的并发请求成为了一个重要的问题。在这种背景下,反向代理和负载...
【IIS与Apache反向代理】是指在一台服务器上,结合使用Microsoft的Internet Information Services (IIS) 和Apache HTTP Server,实现两者之间的协同工作,通过反向代理技术将请求分发到不同的服务环境中。...
介绍如何使用apache进行反向代理的配置,以及配置中遇到的一些问题如何解决
Linux 下安装 Apache 及反向代理配置完整过程 Linux 操作系统下安装 Apache 服务器是一件复杂的任务,需要逐步完成多个步骤。本文将详细介绍 Linux 下安装 Apache 及反向代理配置的完整过程。 安装 Apache 安装 ...
apache tomcat 反向代理,http502错误,百度搜的解决不了问题 a.com 可以访问,www.a.com 无法访问http502错误
windows下配置Apache双向认证和反向代理(Apache+配置文档)
反向代理反向代理反向代理反向代理反向代理反向代理反向代理反向代理反向代理