对负载均衡的全面理解

news2024/10/7 4:22:58

title: 对负载均衡的全面理解 date: 2021-07-10 21:41:24 tags: TCP/IP

alt

负载均衡服务(LBS)大名入行不多久就一直听闻,后来的工作中,也了解到 软件负载均衡器,如被合入Linux内核的章文嵩的LVS,还有以应用程序形式出现的HAProxy、KeepAlived,以及更熟悉的Nginx 等

也知道价格高昂的硬件负载均衡器如F5,A10 (甚至搬运过报废的F5)

alt
alt
alt
alt
alt

但长期以来,也有一些疑惑不解,比如

  • 常说的四层负载均衡是不是就是在传输层实现负载均衡?

  • 四层负载均衡中常听到的三角传输模式IP隧道模式NAT模式,有何区别?哪个性能最好?

  • 四层负载均衡性能好,那为何还有如nginx这样名气更大的七层负载均衡的出现?(Nginx也可以用来做四层代理)

  • 负载均衡与反向代理有何异同?

  • 转发和代理有何本质不同?

这是几年前记的笔记,显然存有谬误。

alt

计算机网络中常见缩略词翻译及简明释要


通读 凤凰架构--负载均衡一章,可知

  • 四层负载均衡 主要工作在第二层和第三层,即 数据链路层和网络层 (通过改写 MAC 地址IP 地址 实现转发)​​​

  • “三角传输模式”(Direct Server Return,DSR),是作用于 数据链路层负载均衡,也称“单臂模式”(Single Legged Mode)或者“直接路由”(Direct Routing)。 通过修改请求数据帧中的 MAC 目标地址,让用户原本是发送给负载均衡器的请求的数据帧,被二层交换机根据新的 MAC 目标地址转发到服务器集群中对应的服务器(“真实服务器”)的网卡上。 效率高性能好,但有些场景不能满足

alt
  • 网络层负载均衡:IP隧道模式,NAT模式

IP隧道模式:

alt

NAT模式:

alt

在流量压力比较大的时候,NAT 模式的负载均衡会带来较大的性能损失,比起直接路由和 IP 隧道模式,甚至会出现数量级上的下降

  • 四层负载均衡进行 转发,只有一条TCP通道; 七层负载均衡只能进行 代理,需要有两条TCP通道
alt
  • 七层负载均衡器就属于反向代理中的一种;

  • 如果只论网络性能,七层均衡器肯定是无论如何比不过四层均衡器的;但其工作在应用层,可以感知应用层通信的具体内容,往往能够做出更明智的决策,玩出更多的花样来。

alt

负载均衡的两大职责是“选择谁来处理用户请求”和“将用户请求转发过去”。上面讲的都是怎样将用户请求转发过去

至于选择哪台应用服务器来处理用户请求(翻牌子),则有很多算法,如下图就是F5的一些选择算法

alt

alt

B站:一次性讲清楚四层负载均衡中的NAT模式和IP隧道模式

Shadowsocks源码解读——什么是代理?什么是隧道?

NAT模式、路由模式、桥接模式的区别

VLAN是二层技术还是三层技术?

四层负载均衡详解

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/949705.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

设计模式--装饰者模式(Decorator Pattern)

一、什么是装饰者模式(Decorator Pattern) 装饰者模式(Decorator Pattern)是一种结构型设计模式,它允许你在不修改现有对象的情况下,动态地将新功能附加到对象上。这种模式通过创建一个包装类,…

hosts文件位置在哪里,教你hosts文件位置在哪里

Hosts是一个没有扩展名的系统文件,其基本作用就是将一些常用的网址域名与其对应的IP地址建立一个关联"数据库",当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会…

(动态规划) 剑指 Offer 66. 构建乘积数组——【Leetcode每日一题】

❓ 剑指 Offer 66. 构建乘积数组 难度:中等 给定一个数组 A[0,1,…,n-1],请构建一个数组 B[0,1,…,n-1],其中 B[i] 的值是数组 A 中除了下标 i 以外的元素的积, 即 B[i]A[0]A[1]…A[i-1]A[i1]…A[n-1]。不能使用除法。 示例: 输入: [1,2,3…

【数学建模】-- 模糊综合评价

模糊综合评价(Fuzzy Comprehensive Evaluation)是一种用于处理不确定性和模糊性信息的决策分析方法。它通常用于解决复杂的多指标决策问题,其中各指标之间可能存在交叉影响和模糊性的情况。模糊综合评价通过将不确定性和模糊性量化&#xff0…

程序员的福音,高效取【淘宝 1688 京东】商品详情页面数据,API 接口封装系列

业务场景:作为全球最大的 B2C 电子商务平台之一,淘宝天猫平台提供了丰富的商品资源,吸引了大量的全球买家和卖家。为了方便开发者接入淘宝天猫平台,淘宝天猫平台提供了丰富的 API 接口,其中历史价格接口是非常重要的一…

ATA-2081高压放大器的电子实验案例(案例合集)

ATA-2081是一款理想的可放大交直流信号的单通道高压放大器。最大输出800Vp-p(400Vp)高压,可以驱动高压型负载。凭借其优异的指标参数受到不少电子工程师的喜欢,其在电子实验中的应用也非常频繁,下面为大家整理出ATA-2081高压放大器的应用案例…

Java实现根据商品ID获取当当商品详情数据,当当商品详情数据接口,当当网API接口封装方法

要通过当当网的API获取商品详情数据,您可以使用当当开放平台提供的接口来实现。以下是一种使用Java编程语言实现的示例,展示如何通过当当开放平台API获取商品详情属性数据接口: 首先,确保您已注册成为当当网开放平台的开发者&…

css中文本阴影特效

文字颜色渐变 .text-clip{color:transparent;font-size: 40px;font-weight: bold;background: linear-gradient(45deg, rgba(0,173,181,1) 0%, rgba(0,173,181,.4) 100%);-webkit-background-clip: text; } 文字模糊 .text-blurry{text-align: center;color: transparent;text-…

Qt 6.5.2连接MySQL及测试代码(附驱动文件)

版本:Windows_64位,Qt 6.5.2,MySQL 8.0 一、配置驱动文件(3步搞定!) 现在Qt6版本不提供MySQL的驱动,而且也没有pro项目让你生成驱动的dll文件,所以只要你使用Qt6版本就需要手动去生…

gitlab-rake gitlab:backup:create 执行报错 Errno::ENOSPC: No space left on device

gitlab仓库备份执行 gitlab-rake gitlab:backup:create报错如下: 问题分析:存储备份的空间满 解决方法: 方法1:清理存放路径,删除不需要文件,释放空间。 方法2:创建一个根目录的挂载点&#x…

vr智慧党建主题展厅赋予企业数字化内涵

现如今,VR全景技术的发展让我们动动手指就能在线上参观博物馆、纪念馆,不仅不用受时间和空间的限制,还能拥有身临其境般的体验,使得我们足不出户就能随时随地学习、传承红色文化。 很多党建展厅都是比较传统的,没有运用…

Redis——》如何评估锁过期时间

推荐链接: 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD…

Leetcode17电话号码的组合

思路:用字典的形式保存号码的映射,实际组合是前一个数字串的组合加上后面一个数字的所有可能组合 answer_dict{2:[a,b,c],3:[d,e,f],4:[g,h,i],5:[j,k,l],6:[m,n,o],7:[p,q,r,s],8:[t,u,v],9:[w,x,y,z]} class Solution:def letterCombinations(self, d…

大集合按照指定长度进行分割成多个小集合,用于批量多次处理数据

📚目录 拆分案例拆分的核心代码 通常我们对集合的更新或者保存都需要用集合来承载通过插入的效率,但是这个会遇到一个问题就是你不知道那天那个集合的数量可能就超了,虽然我们连接数据库进行批量提交会在配置上配置allowMultiQueriestrue,但是…

chain of thought (思维链, cot)

定义 思维链 (Chain-of-thought,CoT) 的概念是在 Google 的论文 "Chain-of-Thought Prompting Elicits Reasoning in Large Language Models" 中被首次提出。思维链(CoT)是一种改进的提示策略,用于提高 LLM 在复杂推理…

c++ 面试题(2)--STL ,新特性

目录 1 STL 1 请说说 STL 的基本组成部分 2 请说说 STL 中常见的容器,并介绍一下实现原理 3 说说 STL 中 map hashtable deque list 的实现原理 4 请你来介绍一下 STL 的空间配置器(allocator) 6 迭代器用过吗?什么时候会失…

医院常见的HIS、CIS、LIS、EMR、PACS、RIS医疗信息化中的介绍

医院常见的HIS、CIS、LIS、EMR、PACS、RIS分别是: HIS(Hospital Information System):医院信息系统,是医院管理信息化的核心系统,包括病人管理、医生管理、药品管理、医疗设备管理、财务管理等多个方面&am…

拿来即用修改密码功能

<template><div><!-- 重置密码 --><el-dialogtitle"修改密码"v-model"state.resetPwdDialogVisible":showClose"state.firstLogin ! 1"width"550px"close"onCancel":close-on-click-modal"false&…

环球新材国际公布2023年中期业绩:上半年业绩符合预期 公司经营稳健可持续

8月25日&#xff0c;环球新材国际&#xff08;6616.HK&#xff09;公布2023年中期业绩&#xff0c;上半年公司营收4.64亿元&#xff0c;毛利润为2.25亿元。毛利率为48.4%&#xff0c;较2022年同期略降2.8个百分点。净利润为9470万元&#xff0c;较2022年同期下降14.5%&#xff…