ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

从网络层面谈谈负载均衡的各种实现、原理、优缺点

2021-10-27 22:33:46  阅读:144  来源: 互联网

标签:负载 HTTP 请求 IP 优缺点 谈谈 均衡 IP地址


HTTP协议层

HTTP网络协议位于应用层,所以这个属于应用的负载均衡;

实现方式很简单,基于HTTP重定向即可。

当一个请求到达负载均衡服务器之后,负载均衡服务器根据某种负载均衡算法计算得到一个应用服务器的地址,通过 HTTP 状态码 302 重定向响应,将新的 IP 地址发送给用户浏览器,用户浏览器收到重定向响应以后,重新发送请求到真正的应用服务器,以此来实现负载均衡。

后端面试:从网络层面谈谈负载均衡的各种实现、原理、优缺点

HTTP 负载均衡

优点:实现方式简单

缺点:对于用户来说,需要两次HTTP请求,性能上稍有影响;另外,应用服务器的IP地址会暴露给外网,增加一定的安全风险;

DNS负载均衡

一般来讲,浏览器通过域名访问网页的第一步是域名解析,即通过域名获取IP地址;这一步是通过DNS域名解析服务器来实现的;

所以很自然的可以利用DNS域名解析逻辑来做负载均衡;

后端面试:从网络层面谈谈负载均衡的各种实现、原理、优缺点

优点:这种负载均衡对性能的影响很小,因为一般浏览器都有缓存,并不是每一次请求都会解析域名

缺点:单纯的使用这种解析方式不太能精准的进行流量调控,因为并不是每一次请求都进行负载均衡逻辑;

反向代理

反向代理服务器一般工作在HTTP协议之上,典型的就是Nginx;整体逻辑如下图所示:

后端面试:从网络层面谈谈负载均衡的各种实现、原理、优缺点

反向代理

优点:部署方便,功能丰富;

缺点:由于代理了所有的请求和返回,所以这里可能称为性能瓶颈;

IP负载均衡

IP层负载均衡主要原理:当请求到达负载均衡服务器之后,负载均衡服务器对数据包的IP地址进行改变,然后重新发送;

后端面试:从网络层面谈谈负载均衡的各种实现、原理、优缺点

ip层负载均衡

IP层负载均衡可以在操作系统内核直接修改IP地址,效率比HTTP层的请求转发好很多;

典型的实现:NAT方式、LVS

数据链路层

这种方案不修改数据包的IP地址,只修改链路层的mac地址,通过mac地址实现负载均衡。

LVS同样支持数据链路层的负载均衡

后端面试:从网络层面谈谈负载均衡的各种实现、原理、优缺点

标签:负载,HTTP,请求,IP,优缺点,谈谈,均衡,IP地址
来源: https://blog.csdn.net/weixin_48612224/article/details/121003727

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有