nginx upstream配置
假设Nginx没有只只能代理一台服务器的话,那它也不可能像今天这么火。Nginx能够配置代理多台服务器。当一台服务器宕机之后。仍能保持系统可用。详细配置步骤例如以下:
1. 在http节点下,加入upstream节点。
upstream linuxidc {
server 10.0.6.108:7080;
server 10.0.0.85:8980;
}
2. 将server节点下的location节点中的proxy_pass配置为:http:// + upstream名称,即“
http://linuxidc”.
location / {
root html;
index index.html index.htm;
proxy_pass http://linuxidc;
}
3. 如今负载均衡初步完毕了。upstream依照轮询(默认)方式进行负载,每一个请求按时间顺序逐一分配到不同的后端服务器。假设后端服务器down掉。能自己主动剔除。尽管这样的方式简便、成本低廉。但缺点是:可靠性低和负载分配不均衡。
适用于图片服务器集群和纯静态页面服务器集群。
除此之外,upstream还有其他的分配策略,分别例如以下:
weight(权重)
指定轮询几率,weight和訪问比率成正比,用于后端服务器性能不均的情况。例如以下所看到的。10.0.0.88的訪问比率要比10.0.0.77的訪问比率高一倍。
upstream linuxidc{
server 10.0.0.77 weight=5;
server 10.0.0.88 weight=10;
}
ip_hash(訪问ip)
每一个请求按訪问ip的hash结果分配。这样每一个訪客固定訪问一个后端服务器,能够解决session的问题。
upstream favresin{
ip_hash;
server 10.0.0.10:8080;
server 10.0.0.11:8080;
}
fair(第三方)
按后端服务器的响应时间来分配请求。响应时间短的优先分配。
与weight分配策略相似。
upstream favresin{
server 10.0.0.10:8080;
server 10.0.0.11:8080;
fair;
}
url_hash(第三方)
按訪问url的hash结果来分配请求,使每一个url定向到同一个后端服务器。后端服务器为缓存时比較有效。
注意:在upstream中加入hash语句。server语句中不能写入weight等其他的參数,hash_method是使用的hash算法。
upstream resinserver{
server 10.0.0.10:7777;
server 10.0.0.11:8888;
hash $request_uri;
hash_method crc32;
}
upstream还能够为每一个设备设置状态值,这些状态值的含义分别例如以下:
down 表示单前的server临时不參与负载.
weight 默觉得1.weight越大,负载的权重就越大。
max_fails :同意请求失败的次数默觉得1.当超过最大次数时,返回proxy_next_upstream 模块定义的错误.
fail_timeout : max_fails次失败后。暂停的时间。
backup: 其他全部的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻。
upstream bakend{ #定义负载均衡设备的Ip及设备状态
ip_hash;
server 10.0.0.11:9090 down;
server 10.0.0.11:8080 weight=2;
server 10.0.0.11:6060;
server 10.0.0.11:7070 backup;
}
nginx upstream配置相关推荐
- nginx upstream配置_Prometheus快速监控Nginx
需求:Prometheus 监控Nginx主要用到以下三个模块: nginx-module-vts:Nginx virtual host traffic status module,Nginx的监控模 ...
- nginx upstream配置aws alb域名导致timeout报错
目录 问题描述 问题分析 问题结论 解决方法 问题描述 先贴nginx的配置,下面是我的nginx ingress的upstream配置,将流量转发到aws的 alb 上,通过alb的负载均衡策略, ...
- nginx upstream 配置
安装 nginx yum installl -y nginx 配置 conf cd /etc/nignx/conf.d vim xxx.conf upstream tcs {server x.x.x. ...
- Nginx upstream 配置
1.轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除. 2.weight 指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况. 例 ...
- 3天精通nginx第二天-负载均衡upstream配置
负载均衡 nginx负载均衡器 upstream配置 nginx负载均衡的5种策略 其他指令 实战配置-代理后台服务 现在有一堆砖需要搬运,一个老板雇佣了一个程序员进行搬运,这样的模式就是单节点,随着 ...
- 通过分析nginx upstream源码来看动态配置upstream模块
upstream回源处理流程 代码围绕着ngx_http_upstream.c展开,该模块主要为创建mainconf函数: static void *ngx_http_upstream_create_ ...
- nginx upstream模块配置
如果Nginx没有仅仅只能代理一台服务器的话,那它也不可能像今天这么火,Nginx可以配置代理多台服务器,当一台服务器宕机之后,仍能保持系统可用.具体配置过程如下: 1. 在http节点下,添加ups ...
- nginx技术(2)nginx的配置详解
nginx的配置 1,启动nginx 1 2 3 4 5 6 7 [root@centos6 nginx-1.2.9]# /usr/sbin/nginx -c /etc/nginx/nginx.con ...
- nginx+tomcat配置负载均衡集群
一.Hello world 1.前期环境准备 准备两个解压版tomcat,如何同时启动两个tomcat,方法如下: 首先去apache tomcat官网下载一个tomcat解压版. 解压该压缩包,生成 ...
最新文章
- @HostListener 可接收的事件列表
- ubuntu 16.0.4 opencv 4.0.0 + opencv_contrib 4.0.0 cmake-gui 安装
- SQLSERVER2012里的扩展事件初尝试(上)
- MySQL索引的查看创建和删除
- 解析python数据后用html输出
- hihocoder1398 网络流五之最大权闭合子图
- matlab写出二维数组
- Java设计流程执行器_Java进阶面试精选系列:SpringMVC+SpringBoot+Hibernate+Mybatis+设计模式...
- PHP 7問世,2億網站效能翻倍有望
- 化身阿凡达,国外小哥开源 AI 实时变脸工具 Avatarify
- Windows SharePoint Services Search和Office SharePoint Server Search的区别
- 使用selenium + pytest + allure做WBE UI自动化
- 有感于李连杰壹基金计划
- 机器学习——特征工程——数据的标准化(Z-Score,Maxmin,MaxAbs,RobustScaler,Normalizer)
- 手机号 MD5加密解密工具类
- python 合并工作簿_将多个csv文件合并到一个xls工作簿Python 3中
- imfindcircles
- 第一周校内OI模拟赛总结(day1day2)
- html 完整性验证,验证消息完整性的方法是() - 问答库
- cv2.contourArea函数详解
热门文章
- CNNIC发布《第20次中国互联网络发展状况统计报告》
- Win7用户登陆密码忘记怎么办?
- 从护肤品到北斗/GPS双模定位模块应该怎么选
- 现代战争4 android8.0,《现代战争4:决战时刻》最新版1.0.5发布 更流畅更爽快
- 蓝牙文件传输失败不支持的解决方法!
- 华为nova7pro的计算机,用了5天的华为nova7pro,优缺点都很多,不吐不快
- 限时疯抢|¥1919元=高性能电脑+500京东卡!这波羊毛我撸爆!
- 工作日闹钟 android,在Android中设置重复星期几闹钟
- 终结者2获取服务器信息失败,为什么终结者2会一直获取资源失败 | 手游网游页游攻略大全...
- 谷歌Android侵犯了何种专利?