热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

HTTP协议层HTTP网络协议位于应用层,所以这个属于应用的负载均衡;实现方式很简单,基于HTTP重定向即可。当一个请求到达负载均衡

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同样支持数据链路层的负载均衡

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


推荐阅读
  • LVS实现负载均衡的原理LVS负载均衡负载均衡集群是LoadBalance集群。是一种将网络上的访问流量分布于各个节点,以降低服务器压力,更好的向客户端 ... [详细]
  • LVS-DR直接路由实现负载均衡示例
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • CentOS 7配置SSH远程访问及控制
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 31.项目部署
    目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ... [详细]
  • 目录浏览漏洞与目录遍历漏洞的危害及修复方法
    本文讨论了目录浏览漏洞与目录遍历漏洞的危害,包括网站结构暴露、隐秘文件访问等。同时介绍了检测方法,如使用漏洞扫描器和搜索关键词。最后提供了针对常见中间件的修复方式,包括关闭目录浏览功能。对于保护网站安全具有一定的参考价值。 ... [详细]
  • 护墙_搭建LVS负载均衡NAT和DR模式
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了搭建LVS负载均衡NAT和DR模式相关的知识,希望对你有一定的参考价值。 ... [详细]
  • Kubernetes(k8s)基础简介
    Kubernetes(k8s)基础简介目录一、Kubernetes概述(一)、Kubernetes是什么(二& ... [详细]
  • PartI:取经处: http:www.ramkitech.com201210tomcat-clustering ... [详细]
  • 高可用架构_MySQL高可用架构设计
    文章来自于https:www.jianshu.compd3107bda2963PHP进阶学习交流QQ群:983229225Mysql复制功能介绍Mysql的复制功能提 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  •   1、确认自己的线路是否连接正确腾达a9设置。 ... [详细]
  • POCOCLibraies属于功能广泛、轻量级别的开源框架库,它拥有媲美Boost库的功能以及较小的体积广泛应用在物联网平台、工业自动化等领域。POCOCLibrai ... [详细]
  • 解决浏览器打开网页后提示“dns_probe_possible 怎么解决”的方法
    在使用浏览器进行网上冲浪的时候遇到故障是一件很常见的事情,很多用户都遇到过系统提示:dns_probe_possible。从提示中可以看出和DNS是有一定的关系的,经过小编测试之后 ... [详细]
  • 浅解XXE与Portswigger Web Sec
    XXE与PortswiggerWebSec​相关链接:​博客园​安全脉搏​FreeBuf​XML的全称为XML外部实体注入,在学习的过程中发现有回显的XXE并不多,而 ... [详细]
  • LVS服务器集群系统
    LVS介绍LVS:LinuxVirtualServer,负载调度器,内核集成,章文嵩(花名正明),阿里的四层SLB(ServerLoadBalance)是基于LVS+keepali ... [详细]
author-avatar
潇洒舞者_899
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有