问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Nginx负载均衡详解

发布网友 发布时间:2024-09-17 03:42

我来回答

1个回答

热心网友 时间:2024-10-24 04:47

前言:

现代高流量网站必须以快速可靠的方式处理来自用户或客户端的数十万(如果不是数百万)并发请求,并返回正确的文本、图像、视频或应用程序数据。为了经济高效地扩展以满足这些高容量,现代计算最佳实践通常需要添加更多服务器。

一个负载均衡器充当“交通*”坐在你的服务器前面,横跨能够履行最大化速度和容量利用率,确保没有一台服务器超负荷工作的方式,可能会降低性能这些请求的所有服务器路由客户端请求.如果单个服务器出现故障,负载平衡器会将流量重定向到其余的在线服务器。将新服务器添加到服务器组时,负载均衡器会自动开始向其发送请求。

什么是负载均衡?

负载均衡是指在一组后端服务器(也称为服务器群或服务器池)之间有效地分配传入网络流量。

什么是Nginx负载均衡

通过上文简单的概念介绍,你可能对负载均衡有了一个初步的了解,知道它是一种调度策略。那么问题来了,Nginx又是什么呢?Nginx如何实现负载均衡?这就要从正向代理和反向代理说起了。

正向代理(forwardproxy):是一个位于客户端和目标服务器之间的服务器(代理服务器),为了从目标服务器取得内容,客户端向代理服务器发送一个请求并指定目标,然后代理服务器向目标服务器转交请求并将获得的内容返回给客户端。

比如国内访问谷歌,直接访问是不行的,我们可以通过一个能够访问谷歌的正向代理服务器,请求发到代理服务器,由代理去谷歌获取数据并返回,这样就变相的实现了访问谷歌的需求。

一句话总结:正向代理,就是代理服务器代理了客户端,去和目标服务器进行交互。

正向代理的用途:

突破IP访问*

通过缓存加速访问资源

隐藏客户端真实IP

客户端访问授权

反向代理(ReverseProxy):与正向代理正好相反,反向代理中的代理服务器,代理的是服务器那端。代理服务器接收客户端请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给客户端,此时代理服务器对外表现为一个反向代理服务器的角色。

反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。

一句话总结:反向代理,就是代理服务器代理了目标服务器,去和客户端进行交互。

反向代理的用途:

隐藏服务器真实IP

负载均衡

通过缓存加速访问资源

提供安全保障

总结

正向代理,就是代理服务器代理了客户端,去和目标服务器进行交互。现实生活中的场景:黄牛买票。

反向代理,就是代理服务器代理了目标服务器,去和客户端进行交互。现实生活中的场景:房屋中介。

实现Nginx负载均衡的组件Nginxhttp功能模块模块说明ngx_http_proxy_moleproxy代理模块,用于把请求后抛给服务器节点或upstream服务器池。ngx_http_upstream_mole负载均衡模块,可以实现网站的负载均衡功能及节点的健康检查。

Nginx的负载均衡功能依赖于ngx_http_upstream_mole模块,所支持的代理方式包括proxy_pass、fastcgi_pass、memcached_pass等。

upstreamwww_server_pool{server10.0.0.7weight=5;server10.0.0.16weight=10;}

参数详解:

1、upstream是关键字必须要有,后面的www_server_pool为一个Upstream集群组的名字,可以自定义;

2、server是关键字固定,后面可以接域名或IP。如果不指定端口,默认是80。结尾有分号。

3、weight代表权重,数值越大分配的请求就越多。

Nginx负载均衡常见算*询

原理是每一个请求按时间顺序逐一被分发到不同的应用服务器,如果接收请求的应用服务器挂了,并且请求超过最大失败次数max_fails(1次),则在失效时间fail_timeout(10秒)内不会再转发请求到该节点~

upstreamdefaultReverseProxyServer{server192.168.0.1:8080;server192.168.0.2:8080;}权重

原理是每一个请求按权重被分发到不同的应用服务器,同样,如果接收请求的应用服务器挂了,并且请求超过最大失败次数max_fails(默认1次或可设置N次),则在失效时间fail_timeout(默认10秒,可设置N秒)内,不会再转发请求到该节点~

upstreamweightReverseProxyServer{server192.168.0.1:8080weight=10max_fails=2fail_timeout=5s;server192.168.0.2:8080weight=5max_fails=2fail_timeout=5s;}ip_hash

原理是每一个请求按用户访问IP的哈希结果分配,如果请求来自同一个用户IP则固定这台IP访问一台应用服务器,该算法可以有效解决动态网页中存在的session共享问题。

upstreamipHashReverseProxyServer{ip_hash;server192.168.0.1:8080;server192.168.0.2:8080;}

一般使用的是基于权重的算法,因为现在很多情况下都是集群部署,而且集群下的各个服务器资源大多都是不均匀的,资源高的则分配权重高一些,资源低的则分配权重低一些,这种情况使用基于权重的负载均衡算法,可以更高效的利用资源和提高并发处理能力~

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
美的面包机和面要多久 美的面包机和面的时间要多长 美的面包机怎么用手动操作 如何用美的面包机发面 如何用美的面包机和面 美的面包机如何和面 CDR教程—教你如何使用CorelDRAW复制图形方法 苹果手机微信怎么换漂亮字体(苹果手机微信怎么换行输入) 有什么好用的app转换字体 手写转文字的软件 erp可以看评论地址吗 淘宝评论url是什么意思? 大显殿五谷帝仙大显殿五谷帝仙-尝百草 五谷仙殿五谷仙殿的传说 五谷帝仙的五谷帝仙药经 大显殿五谷帝仙简介 电信光宽带送的ITV真的是免费的吗?机顶盒是要买还是要租 听说看别的... 2000年贵州旅游人数是多少_贵阳市2023三区一地中考多少人 红白蜡烛的正确使用方法 cp嘛是什么意思? 混纺面料是什么面料 混纺面料属于什么面料 混纺面料是什么 去东北穿什么衣服 东北冬天穿什么 ...剧的主题曲,歌词高潮部分里好像有一句“食尸鬼” 游戏笔记本电脑性价比排行 如何评价《反三国演义》? 插座上的n和l是什么意思 插座上的n和l代表什么 basic源程序可在dos下直接执行吗 房贷担保人需要些什么 房贷担保人要什么手续 房贷担保人具备什么条件 使用docker实现nginx负载均衡 披毛犀和现代犀牛角区别 关于安装协议书模板锦集6篇 电脑网络协议怎么安装 关于安装安全协议书9篇 公安联考面试成绩一般什么时候公布 年度目标值是什么意思 光绪元宝是不是太假了!不值钱的东西说的几十几百万 为什么网上骗子,能发图片说说光绪元宝值几百万有的说不值钱不知想... 驾照换证体检不过关怎么办? 河北师范大学院系设置 河北师范大学外国语学院院系设置 河北师范大学外国语学院科研成果 总喜欢被人夸奖是一种什么心理 ...想被人夸,总想让我夸他,是一种自信的表现还是自卑的,什么心理... 首都图书馆还书需要预约吗 首都图书馆联盟六个标准 24小时自助图书馆使用说明 《供应室护士》工作职责是什么? 一纸合约认证掏钱吗?