`
mayang_lang
  • 浏览: 20824 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Apache Tomcat 负载均衡 主备切换

阅读更多
环境:
apache 2.4.16
tomcat 8.0.15

第一步:
1.准备多个tomcat的实例,在这里我简单的采取了复制多个tomcat的方式
由于多个实例全跑在一台服务器上,因此需要修改三个端口号,默认端口号如下:
8005
8080
8009
按实际情况修改三份不同的端口即可。

2.修改tomcat server.xml文件
为 Engine 节点增加 jvmRoute 属性,属性值为节点名称,如: jvmRoute="node_a"
这个名称会在apache的配置文件中用到

取消每个实例 Engine 节点下的
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
的注释,此项配置用于session复制和共享

第二步:
修改apache配置,取消以下行前面的#号注释
LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so

修改%APACHE_HOME%\conf\extra下的httpd-vhosts.conf配置文件
ProxyRequests off  关闭正向代理
增加以下内容
<VirtualHost *:80>
    ServerAdmin sz@localhost
    ServerName localhost
    ServerAlias localhost
    ProxyPass / balancer://cluster/ stickysession=JSESSIONID|jsessionid nofailover=On
    ProxyPassReverse / balancer://cluster/
    #ErrorLog "logs/error.log"
    #CustomLog "logs/access.log" common
</VirtualHost>

<proxy balancer://cluster>
    BalancerMember ajp://127.0.0.1:8010 loadfactor=1 route=node_a  smax=5 max=20 ttl=120 retry=300 timeout=15
    BalancerMember ajp://127.0.0.1:8011 loadfactor=1 route=node_b  smax=5 max=20 ttl=120 retry=300 timeout=15
    BalancerMember http://127.0.0.1:8080 status=+H
    ProxySet lbmethod=byrequests
</proxy>

其中 BalancerMember http://127.0.0.1:8080 status=+H 为后备节点,当负载节点全部失效时,请求会转发给后备节点

第三步:
为文件上传配置虚拟目录
修改tomcat server.xml文件,在 Host 节点下增加
<Context path="/upload" docBase="D:\web_file_root\upload"></Context>
<Context path="/export" docBase="D:\web_file_root\export"></Context>
<Context path="/download" docBase="D:\web_file_root\download"></Context>

增加虚拟路径映射后,相应的http://xx.xx.xx.xx/upload...请求会被映射到配置的物理路径中,在项目中配置文件上传的物理路径为对应的路径后,即可在集群环境中正常使用文件上传及下载

备注:如果希望tomcat的各个实例间可以session共享,需在web项目的web.xml配置文件中增加<distributable/>,此处未进行详细测试;session共享要求所有session对象实现Serializable


由于时间原因,本次配置成功后未对所有配置项进行深入的了解,现将所有配置项记录下来,以后有时间还需对每个配置项作相应了解,以掌握相关的原理及性能调优的方式。

参考资料:
http://www.cnblogs.com/fly_binbin/p/3881207.html
分享到:
评论

相关推荐

    apachetomcat负载均衡整合文档.pdf

    通过以上步骤,可以构建一个基本的Apache Tomcat负载均衡系统,提供高可用性和高性能的服务。在实际部署中,还需要考虑安全性、日志管理、故障切换以及性能监控等多个方面,以确保系统的稳定运行。

    apache配置负载均衡

    Apache 配置负载均衡是将所有用户的访问压力分散到多台服务器上,也可以分散到多个 Tomcat 里,提高访问性能。负载均衡的主要目标是将用户的访问请求分流到多个服务器或 Tomcat 中,以提高访问性能和可用性。 负载...

    Tomcat +Apache实现负载均衡

    通过以上步骤,我们可以构建一个简单的Windows环境下的Apache和Tomcat负载均衡系统,它能够根据配置自动将请求分发到不同的Tomcat实例,提高系统处理能力,并提供一定的容错性。在实际应用中,还需要考虑监控、故障...

    linux_apache+tomcat负载均衡安装和调试.pdf

    《Linux Apache + Tomcat 负载均衡安装与调试详解》 在当今互联网环境中,高可用性和可扩展性是服务器架构的重要考量因素。Linux、Apache 和 Tomcat 的组合是搭建高性能 Web 应用服务器的常见选择,而通过负载均衡...

    Apache,Tomcat负载均衡和集群

    Apache Tomcat 负载均衡和集群是企业级应用服务器部署中常见的技术,它能够提高系统的可用性、可扩展性和性能。在这个主题中,我们将深入探讨如何通过Apache HTTP Server(通常简称为Apache)配合Tomcat实现负载均衡...

    Mod_Proxy+Apache+Tomcat负载均衡与集群配置

    在当今的企业级应用中,确保系统的高可用性和稳定性是至关重要的。这通常通过建立集群来实现,即通过部署多台服务器来提供相同的服务,以此来...这样,就完成了整个Mod_Proxy+Apache+Tomcat负载均衡与集群的配置过程。

    apache+tomcat7+jk负载均衡

    在这个场景中,Apache扮演着负载均衡器的角色,接收来自客户端的请求,并根据预设策略将请求转发到适当的Tomcat实例。 2. Tomcat7:Tomcat是Apache软件基金会的Java Servlet和JavaServer Pages(JSP)容器,专注于...

    Apache+JK+Tomcat搭建负载均衡

    Apache+JK+Tomcat搭建负载均衡是一种常见的高可用性和性能优化策略,主要目的是分散网络流量,提高服务的稳定性和响应速度。这个方案特别适合大型网站或应用,可以有效防止单点故障,提升用户体验。 首先,负载均衡...

    apache的tomcat负载均衡(两个tomcat)和集群配置(session复制)

    本文将深入探讨如何配置两个Tomcat实例实现负载均衡,并通过session复制来确保用户会话在集群中的无缝切换。 **一、负载均衡** 负载均衡是将网络请求分发到多个服务器上的技术,以防止单一服务器过载并提高服务的...

    使用apache,tomcat做负载均衡

    当Apache与Tomcat结合使用时,Apache可以作为前端服务器接收请求,然后将这些请求智能地转发到后端的多个Tomcat实例上,从而实现负载均衡。 **一、Apache的负载均衡模块:mod_proxy** Apache的mod_proxy模块是实现...

    Windows环境Apache,Tomcat集群,动静分离,负载均衡

    "Windows环境Apache,Tomcat集群,动静分离,负载均衡"这一主题涵盖了四个关键概念,它们对于构建稳定、高可用的Web系统至关重要。 首先,让我们详细探讨**Windows环境下的Apache**。Apache HTTP Server是一款开源、跨...

    Linux平台Apache高可用双机集群Tomcat负载均衡集群配置手册[定义].pdf

    【Linux平台Apache高可用双机集群Tomcat负载均衡集群配置】 在构建高可用性和负载均衡的Web服务环境中,Linux平台上的Apache HTTP Server和Tomcat应用服务器的组合是一种常见且高效的选择。本配置手册主要涉及如何...

    Apache+Tomcat集群的负载均衡配置文件和测试文件

    本主题聚焦于"Apache+Tomcat集群的负载均衡配置",通过Apache作为前端代理服务器,对后端的多个Tomcat实例进行负载分发,以实现高可用和高性能的服务。 首先,我们要理解负载均衡的基本概念。负载均衡是指将流入的...

    nginx+tomcat实现负载均衡1

    在IT行业中,构建高效、可扩展的Web服务是至关重要的,而"nginx+tomcat实现负载均衡1"的主题就是探讨如何通过Nginx反向代理和Tomcat应用服务器结合,来提升系统的性能和稳定性。这一组合是业界常用的一种架构模式,...

    实现Apache,Tomcat集群和负载均衡

    【Apache和Tomcat集群与负载均衡】 Apache和Tomcat集群的构建主要目的是为了提高系统可用性和性能,通过负载均衡技术将客户端的请求分散到多个服务器上,以减轻单个服务器的压力,防止过载并提高服务的可靠性。在这...

    apache与tomcat负载集群的实现

    1. Apache的mod_proxy_balancer模块:该模块提供了负载均衡功能,可以管理多个后端服务器并根据预设策略分配请求。配置时,需要定义一个Balancer成员,包含所有可用的Tomcat实例。 2. Tomcat的Clustering:Tomcat...

    apache+Tomcat负载平衡设置详解

    ### Apache + Tomcat 负载均衡设置详解 #### 一、引言 在现代Web应用部署场景中,为了提高网站的性能、可用性及扩展性,常常采用Apache与Tomcat结合的方式,通过负载均衡技术分散请求到多个服务器节点上。这种架构...

Global site tag (gtag.js) - Google Analytics