Nginx搭建负载环境

Nginx的负载均衡支持4种算法,round-robin、least-connected、ip-hash、和weightd。

round-robin

round-robin的意思是循环轮询。Nginx最简单的负载均衡配置如下:

http
{

upstream app1 {

server 10.10.10.1;

server 10.10.10.2;

}

server {

listen 80;

location / {

proxy_pass http://app1;

}

}

}

upstream app1用来指定一个服务器组,该组的名字是app1,包含两台服务器。在指定服务器组里面包含的服务器时以形式“server
ip/domain:port”的形式指定,其中80端口可以忽略。然后在接收到请求时通过“proxy_pass http://app1”把对应的请求转发到组app1上。Nginx默认的负载均衡算法就是循环轮询,如上配置我们采用的就是循环轮询,其会把接收到的请求循环的分发给其包含的(当前可用的)服务器。使用如上配置时,Nginx会把第1个请求给10.10.10.1,把第2个请求给10.10.10.2,第3个请求给10.10.10.1,以此类推。

least-connected

least-connected算法的中文翻译是最少连接,即每次都找连接数最少的服务器来转发请求。例如Nginx负载中有两台服务器,A和B,当Nginx接收到一个请求时,A正在处理的请求数是10,B正在处理的请求数是20,则Nginx会把当前请求交给A来处理。要启用最少连接负载算法只需要在定义服务器组时加上“least_conn”,如:

upstream app1 {

least_conn;

server 10.10.10.1;

server 10.10.10.2;

}

ip-hash

ip-hash算法会根据请求的客户端IP地址来决定当前请求应该交给谁。使用ip-hash算法时Nginx会确保来自同一客户端的请求都分发到同一服务器。要使用ip-hash算法时只需要在定义服务器组时加上“ip-hash   ”指令,如:

upstream app1 {

ip_hash;

server 10.10.10.1;

server 10.10.10.2;

}

weighted

weighted算法也就是权重算法,会根据每个服务的权重来分发请求,权重大的请求相对会多分发一点,权重小的会少分发一点。这通常应用于多个服务器的性能不一致时。需要使用权重算法时只需要在定义服务器组时在服务器后面指定参数weight,如:

upstream app1 {

server 10.10.10.1 weight=3;

server 10.10.10.2;

}

在如上配置时,Nginx接收到的请求中大概每4个请求中会有3个请求交给10.10.10.1服务器处理,有1个请求交给10.10.10.2处理。

除了这些指令外,Nginx负载还可以指定其它一些指令,比如backup、down等,详情可参考http://nginx.org/en/docs/http/ngx_http_upstream_module.html。

Nginx可指定的指令可参考http://nginx.org/en/docs/http/ngx_http_proxy_module.html。

获取【下载地址】     【免费支持更新】
三大数据库 mysql  oracle  sqlsever   更专业、更强悍、适合不同用户群体
【新录针对本系统的视频教程,手把手教开发一个模块,快速掌握本系统】

A 集成代码生成器 [正反双向(单表、主表、明细表、树形表,开发利器)+快速构建表单;
freemaker模版技术
,0个代码不用写,生成完整的一个模块,带页面、建表sql脚本,处理类,service等完整模块
B 集成阿里巴巴数据库连接池druid;
  数据库连接池  阿里巴巴的
druid。Druid在监控、可扩展性、稳定性和性能方面都有明显的优势
C 集成安全权限框架shiro ;
  Shiro 是一个用 Java 语言实现的框架,通过一个简单易用的 API
提供身份验证和授权,更安全,更可靠
D 集成ehcache 分布式缓存 ;
  是一个纯Java的进程内缓存框架,具有快速、精干等特点,广泛使用的开源Java分布式缓存。
E 集成微信接口开发;    F 图片爬虫技术;   G  SQL 编辑器, 支持复杂sql语句,生成报表,可以导出excel;
H
websocket及时通讯技术;(即时聊天、及时站内信并声音提醒、实时在线管理、websocket及时刷新页面);

时间: 2024-10-10 17:33:10

Nginx搭建负载环境的相关文章

Windows环境下使用Nginx搭建负载均衡

前言 最近没有什么事情,喜欢总结并学习东西!前几天写来一个Session共享,那么我们为什么需要Session共享?因为我们的应用程序分布在多个服务器上,为了合理分配用户的请求,就需要用到负载均衡技术(将请求/数据[均匀]分摊到多个操作单元上执行). 怎样实现负载均衡? 1.  使用F5硬件来实现 2. 使用Nginx 工具来搭建一个. 下面我们就讲解一下,在Windows环境下,怎样部署Nginx及常见问题. 一:下载Nginx 去官网下载最新的 Windows-1.11.10 并解压到英文目

使用Haproxy+nginx 搭建负载均衡集群

案例环境 本案例使用三台服务器模拟搭建一套Web集群,如下所示: 实验步骤如下: 编辑安装nginx服务器安装依赖包下载nginx-01服务器[[email protected] ~]# yum -y install gcc pcre-devel zlib-devel[[email protected] ~]# wget https://nginx.org/download/nginx-1.6.3.tar.gz[[email protected] ~]# tar zxvf nginx-1.6.3

dockerfile+ubuntu+nginx搭建web环境

准备目录 [[email protected] ~]# mkdir /usr/local/dockerfile1 该目录下准备Dockerfile文件 1 FROM ubuntu 2 MAINTAINER xbf 3 RUN sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list 4 RUN apt-get update 5 RUN apt-get install -y nginx 6 COPY inde

HHvm Apache 2.4 Nginx建站环境搭建方法安装运行WordPress博客

HHvm Apache 2.4 Nginx建站环境搭建方法安装运行WordPress博客 VPS主机   2014年06月02日 17:20 评论» 文章目录 Debian上安装 CentOS上安装 Ubuntu上安装 装Wordpress HHvm安装小结 HHVM是一个强大的可以用于替代PHP的建站环境,出自Facebook团队,它是一个PHP的JIT(Just-In- Time)编译器,同时具有产生快速代码和即时编译的优点.实践证明HHVM可以明显地提升PHP执行速度,节省大量的服务器资源

搭建Nginx+Tomcat 负载均衡集群

实验拓扑: 实验要求: 客户访问192.168.10.10,第一次或者第一个请求将请求交给10.101,第二次或者第二个请求交给10.102.实现两台服务器负载,多台的搭建方法相同. 试验环境: 主机 操作系统 所需软件 Nginx服务器 rhel 6.5 x86_64 nginx-1.6.0.tar.gz Tomcat服务器1 CentOS 6.5   x86_64 apache-tomcat-7.0.54.tar.gz  jdk-7u65-linux-x64.gz Tomcat服务器2 Ce

keepalived+nginx搭建高可用and负载均衡集群

keepalived+nginx搭建高可用and负载均衡集群 前言 因生产环境需要,现需要搭建一个前端为nginx的HA双向互备.后端为nginx代理的loadbalance负载均衡集群.nginx进程基于于Master+Slave(worker)多进程模型,自身具有非常稳定的子进程管理功能.在Master进程分配模式下,Master进程永远不进行业务处理,只是进行任务分发,从而达到Master进程的存活高可靠性,Slave(worker)进程所有的业务信号都由主进程发出,Slave(worke

CentOS7.2 上 Nginx PHP Mariadb 环境搭建

最近有个ERP+PHP-web 測試頁面環境部署需求,需要部署nginx+php的cgi+socket的模式.mysql环境.查看服务端口是否起来,我们习惯使用netstat指令查看,所以如果你的系统里尚未安装netstat,可直接安裝 yum install -y net-tools即可 实验环境: Linux版本:CentOS 7.2 nginx版本:nginx-1.10.1 PHP版本:php-5.6.5 mysql版本:MariaDB-5.5.52 一.首先部署nginx 把相關依賴包安

Nginx 在windows下配合iis搭建负载均衡过程 [转]

因为项目遇到大量图片存储问题,虽然现在我们图片还不是很多(目前在1T上下,预计增长速度每年1.3倍的增长速度),自己在思考如何有效地存储大量图片时,查找一些资料,看到了,有人使用 Nginx搭建服务器,本着学习的目的,自己也亲自去体验了一下nginx在window下的安装过程,并配合iis搭建一个负载均衡的过程,环境如下: 解释一下,因为我自己就一台计算机,为了演示效果,所以安装了虚拟机. 计算机A : 本计算机上安装Nginx 同时也会配置IIS,为了不和Nginx的80端口冲突,务必要修改端

Centos7搭建nginx+tomcat负载均衡

Nginx简介 Nginx是一种服务器软件,也是一种高性能的http和反向代理服务器,同时还是一个代理邮件服务器.也就是说,我们在Nginx上可以发布网站,可以实现负载均衡(提高应答效率,避免服务器崩溃),还可以作为邮件服务器实现收发邮件等功能.而最常见的就是使用Nginx实现负载均衡. Nginx与其他服务器的性能比较 Tomcat服务器面向Java语言,是重量级的服务器,而Nginx是轻量级的服务器.Apache服务器稳定.开源.跨平台,但是Apache服务器不支持高并发,Nginx能支持处