Nginx负载均衡配置实例
面对高并发的问题,企业往往会从两个方面来解决。其一,从硬件上面,提升硬件的配置,增加服务器的性能;另外,就是从软件上,将数据库和WEB服务器分离,使数据库和WEB服务器都能够充分发挥各自的性能,并且二者不相互影响。然而,这样还不够,一台WEB服务器可能无法承受太高的并发请求。那么负载均衡技术就应运而生,下面我们就来谈谈如何用Nginx进行负载均衡。
负载均衡的作用
1.转发
转发是负载均衡的核心功能,它能够根据一定的算法,将客户端请求转发到不同应用服务器,缓解每台服务器的压力,提高并发量。
2.移除故障
当其中一台服务器发生故障时,会被移出轮询队列,客户端请求将会发送到其他几台正常的服务器,不会影响客户端的访问。
3.恢复添加
当故障的服务器恢复时,会自动被加到轮询队列,继续处理客户端请求。

Nginx配置
轮询
如下是Nginx的基本配置,upstream配置要负载的节点。nodes可以自己取,要跟server中proxy_pass的nodes一致。
server_name可以是Nginx服务器的ip地址,也可以是域名,根据具体情况配置即可,listen为端口号。
upstream nodes {
server 192.168.1.11;
server 192.168.1.12;
}
server {
listen 80;
server_name 127.0.0.1;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://nodes;
index index.html index.htm;
}
}
使用以上配置,默认采用轮询的分发策略,即每个请求按时间顺序逐一分配到不同的应用服务器,如果应用服务器down掉,自动剔除,剩下的继续轮询。
权重
如果需要为每个请求节点配置不同的权重,可以在地址后面增加权重,配置如下
upstream nodes {
server 192.168.1.11 weight=4;
server 192.168.1.12;
}
通过配置权重,指定轮询几率,权重和访问比率成正比,用于应用服务器性能不均的情况。weight默认为1,weight越大,负载的权重就越大。
IP哈希算法
还有一种策略是IP哈希算法,请求按访问ip的hash结果分配,这样每个IP固定访问一个应用服务器,可以解决session共享的问题,配置如下
upstream nodes {
ip_hash;
server 192.168.1.11;
server 192.168.1.12;
}
其他
upstream中还有其他几个常用的配置项:
down: 表示当前的server不參与负载均衡
max_fails: 允许请求失败的次数默认为1.当超过最大次数时,返回proxy_next_upstream 模块定义的错误
fail_timeout: max_fails次失败后,暂停请求此台服务器的时间
backup: 其他全部的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻
upstream nodes {
server 192.168.1.11 down;
server 192.168.1.12 backup;
server 192.168.1.13;
}
以上就是Nginx的一些基本配置,能够满足基本的使用,大家可以动手测试一下。
下载地址:https://nginx.org/en/download.html,下载后解压即可。配置文件为conf/nginx.conf,修改好配置文件后双击nginx.exe启动。
Nginx负载均衡配置实例的更多相关文章
- Nginx负载均衡配置实例详解
负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可 ...
- Nginx负载均衡配置实例详解(转)
负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可 ...
- [转载]Nginx负载均衡配置实例详解
负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可 ...
- Nginx负载均衡配置实例(转)
1.轮询 轮询即Round Robin,根据Nginx配置文件中的顺序,依次把客户端的Web请求分发到不同的后端服务器.配置的例子如下: http{ upstream sampleapp { serv ...
- Nginx做NodeJS应用负载均衡配置实例
这篇文章主要介绍了Nginx做NodeJS应用负载均衡配置实例,本文直接给出配置实例,需要的朋友可以参考下. 负载均衡可以把用户的请求分摊到多个服务器上进行处理,从而实现了对海量用户的访问支持.负载均 ...
- nginx高性能WEB服务器系列之六--nginx负载均衡配置+健康检查
nginx系列友情链接:nginx高性能WEB服务器系列之一简介及安装https://www.cnblogs.com/maxtgood/p/9597596.htmlnginx高性能WEB服务器系列之二 ...
- Tomcat集群,Nginx集群,Tomcat+Nginx 负载均衡配置,Tomcat+Nginx集群
Tomcat集群,Nginx集群,Tomcat+Nginx 负载均衡配置,Tomcat+Nginx集群 >>>>>>>>>>>> ...
- Nginx负载均衡配置简单配置方法
http://www.jb51.net/article/121235.htm Nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至不同的Web服务器.下面通过 ...
- Mall电商项目总结(二)——nginx负载均衡配置和策略
1. nginx配置文件 用户在浏览器上输入,http://www.xwld.site/ 实际上是在访问服务器80端口,nginx 监听80端口,将用户的请求转发到8080和9080端口 . upst ...
随机推荐
- Fire Balls 07——砖块的淡出,消失以及砖塔的下落
版权申明: 本文原创首发于以下网站: 博客园『优梦创客』的空间:https://www.cnblogs.com/raymondking123 优梦创客的官方博客:https://91make.top ...
- BZOJ2152 聪聪可可 (点分治)
2152: 聪聪可可 题意: 在一棵边带权的树中,问任取两个点,这两个点间的权值和是3的倍数的概率. 思路: 经典的点分治题目. 利用点分治在计算所有路径长度,把路径长度对3取模,用t[0],t[1] ...
- 洛谷P1352没有上司的舞会+树形二维DP
传送门 题意:上司和直接下属,不能同时去一个聚会,问可邀请到的人的快乐值最大是多少: 参考:https://www.luogu.org/blog/mak2333/solution-p1352 思路: ...
- 牛客网暑期ACM多校训练营(第三场) A PACM Team 01背包 记录路径
链接:https://www.nowcoder.com/acm/contest/141/A来源:牛客网 Eddy was a contestant participating in ACM ICPC ...
- Wannafly挑战赛16---A 取石子
链接:https://www.nowcoder.com/acm/contest/113/A来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言52428 ...
- GraphQL Java-入门指南
GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时. GraphQL 对你的 API 中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任 ...
- SpringBoot启动原理
SpringBoot启动原理 我们开发任何一个Spring Boot项目,都会用到如下的启动类: @SpringBootApplication public class Application { p ...
- webpack中clean-webpack-plugin插件使用遇到的问题及解决方法
webpack 会生成文件,然后将这些文件放置在 /dist 文件夹中,但是 webpack 无法追踪到哪些文件是实际在项目中用到的. 通常,在每次构建前清理 /dist 文件夹,是比较推荐的做法,因 ...
- 调整linux系统时间和硬件时间
1.yum -y install ntp 2.cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime(如果拷贝失败,可以 mv /etc/localt ...
- ubuntu下配置JDK,Eclipse,android开发环境
前言:由于我的电脑是64位的,所以下面使用的jdk ; eclipse : 包括我安装的 ubuntu12.0.4LTS 都是64位的:如果你是32位请下载32位的系统以及jdk,eclipse等软件 ...