Nginx+Tomcat高性能负载均衡集群搭建
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/8745794.html
Nginx是一个高性能的HTTP服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其占有内存少,并发能力强,在同类型的网页服务器中表现较好。Nginx可以在大多数Unix Linux OS上编译运行,并有Windows移植版。一般情况下,对于新建站点,建议使用最新稳定版作为生产版本。
单个Tomcat最大支持在线访问是500左右,要通知支持更多的访问量一个Tomcat就没法做到了。在这里我们采用集群部署方式,使用多个Tomcat,反向代理使用Nginx。
架构如下:

准备工作
apache-tomcat-7.0.61
nginx-1.12.2
Redis-x64-3.2.100
为简化示例,这里只讲Nginx+Tomcat的部署与集成。
Nginx安装
(1)去官网下载Windows的最新稳定版Nigx(我用的1.12.2版本)。官网
(2)解压到磁盘任意目录。这里我解压在 F:\nginx-1.12.2
(3) 启动服务: start nginx.exe
停止服务:nginx -s stop
重新加载配置:nginx -s reload
修改nginx.conf
1.进程数与每个进程的最大连接数
- nginx进程数,建议设置为等于CPU总核心数
- 单个进程最大连接数。那么该服务器的最大连接数=连接数*进程数

2.Nginx的基本配置
- 监听端口一般都为http端口:80
- 域名可以有多个,用空格隔开。例如server_name www.sohu.com baidu,com

3.负载均衡列表基本配置
- location / {} :对什么样的后缀进行负载均衡请求,假如我们要对所有的aspx后缀的文件进行负载均衡时,可以这样写:location ~.*\.aspx${}
- proxy_pass:请求转向自定义的服务器列表,这里我们将请求都转向标识为http://joannayan.com的负载均衡服务器列表。
- weight权重,权值越高被分配的几率越大。可以根据机器配置定义权重(如果某台服务器的硬件配置很好,可以处理更多的请求,那么可以为其设置一个较高的weight;而有一台的服务器的硬件配置比较差,那么可以将前一台的weight配置为weight=2,后一台差的配置为weight=1)。

测试
分别向两台机器的Tomcat服务器中部署TestNginx.war这个Web项目(为了区分访问的是不同的Web服务器,两机器中部署的TestNginx这个项目在页面显示上略有不同)。
启动启动两机器上的Tomcat,并启动nginx.

访问nginx:http://localhost/TestNginx

刷新,再访问:

由于权重的不同,在不断刷新页面的过程中,显示“5.20服务器”的可能性会大一些。
如果此文对您有帮助,微信打赏我一下吧~

Nginx+Tomcat高性能负载均衡集群搭建的更多相关文章
- Nginx+Tomcat+Memcached负载均衡集群服务搭建
操作系统:CentOS6.5 本文档主要讲解,如何在CentOS6.5下搭建Nginx+Tomcat+Memcached负载均衡集群服务器,Nginx负责负载均衡,Tomcat负责实际服务,Memc ...
- lvs+keepalived+nginx实现高性能负载均衡集群【转】
转自 lvs+keepalived+nginx实现高性能负载均衡集群 - 青衫lys - 博客园http://www.cnblogs.com/liuyisai/p/5990645.html 一.为什么 ...
- 简单的 Nginx+Tomcat 配置负载均衡集群
简单 Nginx+Tomcat 配置负载均衡集群 前期准备 解压两个tomcat,修改端口号 server1:8081 server:8082 同时启动 nginx官网下载解压版nginx 创建一个简 ...
- nginx+tomcat 配置负载均衡集群 (转载)
一.Hello world 1.前期环境准备 准备两个解压版tomcat,如何同时启动两个tomcat,请看我的另一篇文章<一台机器同时启动多个tomcat>. nginx官网下载解压版n ...
- Nginx +tomcat 实现负载均衡集群
一. 工具 nginx-1.8.0 apache-tomcat-6.0.33 二. 目标 实现高性能负载均衡的Tomcat集群: 三. 步骤 1.首先下载Nginx ...
- nginx+tomcat实现负载均衡集群
一台tomcat站点由于可能出现单点故障及无法应付过多客户复杂多样的请求等问题,不能单独应用于生产环境下 所以需要一套可靠的解决方案来完善web站点架构 而Nginx只能访问静态页面,如果需要动态需要 ...
- 【Nginx】(主从热备)LVS+Keepalived+Nginx实现高性能负载均衡集群
一.LVS 1.1 概述 1.2 Nginx与LVS区别什么 二.Keepalived 2.1 概述 2.2 keepalived和其工作原理 三.LVS+Keepalived+Nginx 搭建双机主 ...
- lvs+keepalived+nginx实现高性能负载均衡集群
一.为什么要使用负载均衡技术? 1.系统高可用性 2. 系统可扩展性 3. 负载均衡能力 LVS+keepalived能很好的实现以上的要求,LVS提供负载均衡,keepalived提供健康检查, ...
- Nginx+Tomcat 配置负载均衡集群
一.Hello world 1.前期环境准备 准备两个解压版tomcat,如何同时启动两个tomcat,请看我的另一篇文章<一台机器同时启动多个tomcat>. nginx官网下载解压版n ...
随机推荐
- TypeScript入门知识四(表达式和循环)
一,箭头表达式 用来声明匿名函数,消除传统匿名函数的this指针问题 //单行的话可以省略{},多行的不能省. var sum = (arg1,arg2)=> arg1+arg2; //定义一个 ...
- 33.Django ModelForm
ModelForm 1.ModeForm简单验证 from django.db import models # Create your models here. class UserInfo(mode ...
- Java实现mongodb原生增删改查语句
Java实现mongodb原生增删改查语句 2018-03-16 自动化测试时,需校验数据库数据,为了快速自动化,在代码中用原生增删改查语句操作mongodb 结构 代码 0 pom.xml < ...
- java的枚举2
首先先理解一下java中枚举的本质. java的世界中一切皆是类,下面通过一个例子解释一下enum的本质: package cn.xnchall.enumeration; public class G ...
- Python基础教程3——教你用Python做个简单的加密程序(还基础什么呀,直接来练习吧,带源码)
因为发现基础教程我之前推荐的那个网站就已经很完善了,就不重复写了,所以本汪来一起做练习吧. 一.加密原理 记得当时我学c++的时候,学到输入输出流的时候,当时王老师就教我们写了一个小的加密程序,所以这 ...
- 关于js高度和宽度的获取 ----2017-03-29
来源:百度 对错有待实践检验 网页可见区域宽: document.body.clientWidth 网页可见区域高: document.body.clientHeight 网页可见区域宽: docu ...
- java 获取文件内所有文件名
package com.xinwen.user.controller; import java.io.File;import java.util.ArrayList;import java.util. ...
- console.log(0.2+0.4===0.6)// true or false??
在正常的数学逻辑思维中,0.2+0.4===0.6这个逻辑是正确的,但是在JavaScript中0.2+0.4!==0.6这是为什么呢?这个问题也会偶尔被用来当做面试题来考查面试者对 JavaScri ...
- 0x02 译文:Windows桌面应用Win32第一个程序
本节课我们将用C++ 写一个最简单的Windows 程序. 目录: 创建一个窗口 窗口消息 编写窗口过程 绘制窗口 关闭窗口 管理应用程序状态 代码如下: #ifndef UNICODE #defin ...
- [poj3984]迷宫问题_bfs
迷宫问题 题目大意:给你一个5*5的矩阵,求左上角到左下角的最短路径. 注释:0或1的矩阵,1表示不能走,0表示能走,保证有唯一最短路径. 想法:bfs爆搜练习题.通过其实点,定义方向数组,然后进行b ...