系统总是频繁更新,为了避免更新系统的时候领导看不到东西,打算用ngix做代理,后台部署两个tomcat做负载均衡,避免更新一台就无法使用系统的问题,这两天看了写资料,把几个关键点记录在这里以便备忘。

环境:jdk,1.7,tomcat7,nginx1.5.8; 基于64位的windows配置

第一步:更改tomcat三个端口,保证同一台机器上可以运行两个tomcat,更改的端口包括server port,两个connector port,xml配置参见下面,为了避免文件过大,删除了注释和无关的配置:

  1. <?xml version='1.0' encoding='utf-8'?>
  2. <Server port="18005" shutdown="SHUTDOWN">
  3. <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  4. <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
  5. <Listener className="org.apache.catalina.core.JasperListener" />
  6. <!-- Prevent memory leaks due to use of particular java/javax APIs-->
  7. <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
  8. <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
  9. <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
  10. <GlobalNamingResources>
  11. <Resource name="UserDatabase" auth="Container"
  12. type="org.apache.catalina.UserDatabase"
  13. description="User database that can be updated and saved"
  14. factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
  15. pathname="conf/tomcat-users.xml" />
  16. </GlobalNamingResources>
  17. <Service name="Catalina">
  18. <Connector port="8082" protocol="HTTP/1.1"
  19. connectionTimeout="20000"
  20. redirectPort="8443" />
  21. <Connector port="18009" protocol="AJP/1.3" redirectPort="8443" />
  22. 。。。。。
  23. </Service>
  24. </Server>

第二部,配置nginx(负载均衡):

http节点下增加如下配置:

  1. upstream localhost {
  2. #针对不同ip的用户请求分配固定的tomcat响应其请求。
  3. ip_hash;
  4. #配置tomcat服务器的ip:端口,处理请求权重
  5. server localhost:8080 weight=5;
  6. server localhost:8082 weight=5;
  7. }

http的节点下更改location/节点配置:

  1. location / {
  2. #root   html;
  3. #index  index.html index.htm;
  4. proxy_connect_timeout   3;
  5. proxy_send_timeout      30;
  6. proxy_read_timeout      30;
  7. proxy_pass http://localhost;
  8. }

配置完毕后,启动两个tomcat,再启动nginx,启动ngix方式:进入dos命令窗口,切换至nginx主目录,输入命令nginx.exe即可,

停止nginx可以使用nginx.exe -s stop

了解更详细的步骤参考下面两个链接:

http://ari.iteye.com

http://www.blogjava.net/tunaic/archive/2009/11/30/304212.html

CentOS系统下做nginx和tomcat负载均衡的更多相关文章

  1. Linux配置Nginx+Tomcat负载均衡

    cd /usr/local/tomcat1/webapps/ROOT/ tar -zxvf nginx-1.14.2.tar.gz -C /usr/local 一.Linux配置Nginx 一.下载N ...

  2. 基于nginx的tomcat负载均衡和集群

    要集群tomcat主要是解决SESSION共享的问题,因此我利用memcached来保存session,多台TOMCAT服务器即可共享SESSION了. 你可以自己写tomcat的扩展来保存SESSI ...

  3. Nginx+Tomcat 负载均衡、动静分离集群

    目录: 一.Nginx负载均衡实现原理 二.Nginx动静分离实现原理 三.Nginx+Tomcat 负载均衡.动静分离集群部署 一.Nginx负载均衡实现原理 1.Nginx实现负载均衡是通过反向代 ...

  4. nginx多tomcat负载均衡

    目的 先说说我要干什么,如题:使用nginx实现多个tomcat服务器的负载均衡. nginx 大名鼎鼎,相信很多人都听过,以前感觉很厉害,用了之后发现真的很厉害.nginx可以做以下几件事: 反向代 ...

  5. centos系统下安装Nginx

    参考链接 CentOS 7 用 yum 安装 Nginx Nginx负载均衡配置 下载并安装 #使用以下命令 sudo yum install -y nginx #sudo表示使用管理员权限运行命令 ...

  6. Linux(CentOS)系统下设置nginx开机自启动

    Nginx 是一个很强大的高性能Web和反向代理服务器.下面介绍在linux下安装后,如何设置开机自启动.首先,在linux系统的/etc/init.d/目录下创建nginx文件,使用如下命令:vi ...

  7. 配置apache和nginx的tomcat负载均衡

    概述 本篇文章主要介绍apache和nginx的相关配置,tomcat的相关安装配置我在前面有写过一篇,详细介绍通过两种配置方法配置nginx. tomcat配置参考:http://www.cnblo ...

  8. Nginx和Tomcat负载均衡实现session共享(转)

    以前的项目使用Nginx作为反向代理实现了多个Tomcat的负载均衡,为了实现多个Tomcat之间的session共享,使用了开源的Memcached-Session-Manager框架. 此框架的优 ...

  9. Nginx和Tomcat负载均衡实现session共享

    以前的项目使用Nginx作为反向代理实现了多个Tomcat的负载均衡,为了实现多个Tomcat之间的session共享,使用了开源的Memcached-Session-Manager框架. 此框架的优 ...

随机推荐

  1. 定位 - MapKit - 基本使用

    /** *  Terminating app due to uncaught exception 'NSInvalidUnarchiveOperationException', reason: 'Co ...

  2. Tomcat基础教程(四)

    一.将Web应用部署到Tomcat中 为什么要部署?将Web应用部署到Tomcat中,那么Tomcat就能找到相应的Web应用,当Tomcat启动时就会加载和初始化Web应用,而在Tomcat启动后, ...

  3. HIVE编程指南之HiveQL的学习笔记1

    // HiveQLa) 数据定义语言1 数据库表的一个目录或命名空间,如果用户没有指定数据库的话,那么将会使用默认的数据库default-----创建数据库CREATE DATABASE guoyon ...

  4. OA学习笔记-010-Struts部分源码分析、Intercepter、ModelDriver、OGNL、EL

    一.分析 二. 1.OGNL 在访问action前,要经过各种intercepter,其中ParameterFilterInterceptor会把各咱参数放到ValueStack里,从而使OGNL可以 ...

  5. ANDROID_MARS学习笔记_S03_003_LocationManager、LocationListener

    一.简介 二.代码1.xml (1)AndroidManifest.xml 增加 <uses-permission android:name="android.permission.A ...

  6. Android Animation

    Android中常用两种动画模式,tween animation和frame animation,即补间动画和帧动画,但在android3.0中又引入了一个新的动画系统:property animat ...

  7. 栈的实现(JAVA)

    栈定义 栈(stack):是一种特殊的串行形式的数据结构,其特殊之处在于只允许在链接串行或者阵列的 一端进行插入.删除操作.其实现方式可以通过一维阵列和链接串行来实现. Tips:简单的来说栈其实也是 ...

  8. POJ_3045_Cow_Acrobats_(贪心)

    描述 http://poj.org/problem?id=3045 n头牛,每头牛都有重量w[i]和力量s[i].把这n头牛落起来,每头牛会有一个危险值,危险值是它上面所有牛的重量和减去它的力量.求危 ...

  9. Apache Struts 跨站脚本漏洞

    漏洞名称: Apache Struts 跨站脚本漏洞 CNNVD编号: CNNVD-201311-010 发布时间: 2013-11-04 更新时间: 2013-11-04 危害等级:    漏洞类型 ...

  10. git 和 github 使用笔记

    想干这么一件事:写一个web自动化测试的项目,部署在公司内网的小服务器上. 我想拐个弯干这件事:公司有一个工作用的windows电脑,还有一个linux Ubuntu11.04的小测试服务器.我在本地 ...