负载均衡架构

news2025/3/1 14:01:32

整体架构

设计关键点

在这里插入图片描述

4级负载架构

在这里插入图片描述

3级负载架构

在这里插入图片描述

2级负载架构

在这里插入图片描述

技术剖析

DNS

在这里插入图片描述

应用

地理位置和机房级别的负载均衡

优点

标准协议

缺点

  1. 能力有限,不够灵活
  2. DNS劫持
  3. DNS缓存

HTTP-DNS

在这里插入图片描述

应用场景

App、客户端

优缺点

  1. 可以根据业务和团队技术灵活定制
  2. 非标协议、不通用,不太适合Web业务

架构设计关键点

  1. 智能调度模块可以独立,也可以嵌入到HTTP-DNS,一般独立成运维系统,因为智能调度系统有很多作用
  2. 正常的时候走DNS,异常的时候才走HTTP-DNS
  3. SDK会缓存HTTP-DNS解析结果

GSLB

定义

GSLB(Global Server Load Balancing):全局负载均衡,主要用于在多个区域拥有自己服务器的站点,为了使全球用户只以一个 IP 地址或域名就能访问到离自己最近的服务器,从而获得最快的访问速度

应用场景

适合超大规模业务,多地甚至全球部署的业务,例如Google、Facebook等

优缺点

  1. 功能强大,可以实现就近访问,容灾切换,流量调节
  2. 实现复杂

基于DNS的GSLB

在这里插入图片描述

优缺点

  1. 实现简单、实施容易、成本低
  2. 可能判断不准,例如用户手工指定了DNS服务器

基于HTTP redirect的GSLB

在这里插入图片描述

优缺点

  1. 能够拿到用户真实IP,判断准确
  2. 只适合HTTP业务

基于IP欺骗的GSLB

在这里插入图片描述

优缺点

  1. 适合所有业务
  2. 每次请求必须经过GSLB设备,性能低
  3. 一般配合HTTP redirect GSLB一起应用

F5

在这里插入图片描述

LVS

在这里插入图片描述

项目介绍

开源项目,Linux2.4版本集成到内核

性能

内核级别的负载均衡,基本能跑满千兆网卡带宽,性能量级10~100万请求

LVS-NAT

在这里插入图片描述

基本原理

LVS绑定VIP,客户端向 VIP 发起请求连接,LVS在经过调度之后选取 RS,将本地端口与 RS 的端口做映射,然后 RS 返还数据给LVS,LVS将数据返还客户端

应用场景

反向代理,类似于 Nginx,Internet 不知道内部服务器的任何信息

LVS-DR

在这里插入图片描述

基本原理

LVS绑定VIP,客户端向 VIP 发起请求连接,LVS修改目的 mac 地址为某个服务器 RS,RS 服务器处理后直接返回结果给客户端

应用场景

LVS 和服务器在同一企业网络

LVS-TUN

在这里插入图片描述

基本原理

LVS绑定VIP,客户端向 VIP 发起请求连接,LVS通过隧道技术转发给某个 RS 服务器,RS 服务器处理后直接返回结果给客户端

应用场景

LVS 和服务器在不同企业网络,企业网络分为多个子网

F5/LVS/Nginx对比

F5LVSNginx备注
基本原理硬件实现Linux内核实现软件实现硬件>内核>应用
流量类型L4L4L7,仅限HTTPNA
成本超贵一般,需要CPU较好的服务器便宜NA
功能超强,负载均衡、防火墙、高速缓存…网络负载均衡反向代理NA
性能量级100万~1000万10万~100万5万~10万以HTTP请求为例,Spring Gateway大约2~3万

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

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

相关文章

企业微信汇报怎么定时提醒?如何导出?

汇报工作的重要性在哪里? 作为职场人,能够准确及时的和自己的领导汇报自己的工作,不仅仅是我们工作的一部分,也是我们和领导工作沟通的一种十分重要的形式。汇报工作的重要性主要体现在: ● 可以让你的领导知道你日常…

算法刷题日志——贪心

文章目录分发糖果根据身高重建队列分发糖果 相邻的学生中,评分高的学生必须获得更多的糖果 ,所以需要分别从左往右和从右往左遍历,然后取两次遍历结果的最大值就是最少糖果的数目了。 class Solution {public int candy(int[] ratings) {int[…

xgplayer西瓜视频插件引用后因视频格式引起问题?

起因是我的医疗公众号项目为了应对新需求引入了西瓜视频插件,但后台配置视频文件后有的可以正常展示,有的却是黑屏。我这边的安卓和ios端app都嵌套了我写的h5页面。 初步调查: 个别课程在手机上看着确实不能播放,在电脑上播放是…

大麦 Android 选座场景性能优化全解析

作者:于世雷(蓝彻) 通常情况下移动端APP由于受到设备性能所限一般较少有场景会处理超量数据,更多的是将复杂数据处理交付给服务端。本质上降低终端强数据处理是很有必要的,降低CPU使用率、减少内存抖动可以大幅提升APP使用体验。但是有时移动…

Node.js学习记录

一、Node.js简介 浏览器中JavaScript在浏览器中的运行环境(代码正常运行需要的环境), Node.js后端的运行环境,通过Node.js可以实现用JavaScript后端开发 Node.js是一个基于Chrome V8引擎的JavaScript运行环境 二、fs文件系统模块 …

腾讯云短信告警

腾讯云短信告警 密钥获取地址:https://console.cloud.tencent.com/cam/capi #!/bin/python #-*- coding: utf-8 -*-import json, sys from tencentcloud.common import credential from tencentcloud.common.profile.client_profile import ClientProfile from tenc…

来!简单了解一下计算机发展史!

一、古代的运算工具 1.双手 当我们还是远古人的时候,我们用双手来进行计算 2.结绳、垒石 渐渐的,又出现了结绳记事和垒石记事 3.春秋战国时期 — 算筹 春秋战国的时候,广泛使用的算筹,根据不同的排列来表示不同的数字并进行计…

JavaScript基础(11)_方法、枚举对象中的属性、作用域

函数可以成为对象的属性。如果一个函数作为一个对象的属性保存,那么我们称这个函数是这个对象的方法,调用这个函数就是调用对象的方法(method) 比如:console.log()调用console对象的log方法。document.write() 调用document对象的write方法。…

RabbitMQ详解

RabbitMQ详解 文章目录RabbitMQ详解一、AMQP 和 JMS1.1 JMS1.2 AMQP1.3 两者对比二、RabbitMQ消息模型2.1 基本消息模型2.2 工作消息模型2.3 订阅模型2.3.1 Fanout 订阅模型2.3.2 Direct 订阅模型2.3.3 Topic 订阅模型三、消息持久化3.1 交换机持久化3.2 队列持久化3.3 签收机制…

玩推特营销必知的基础常识上篇

现如今,Twitter已从一个让人们分享其想法的地方变成了一个强大的营销,该可让品牌实时与受众交流。每月活跃用户超过3.21亿,很容易看出为什么公司在所有这些时间之后仍继续使用Twitter。但是,仅仅偶尔发出有关趋势的话题&#xff0…

S标签肽,H2N-KETAAAKFERQHMDS-OH

S Tag Peptide 是一种合成的多肽,由15个氨基酸残基构成。S Tag Peptide is a 15 amino acid peptide derived from RNase A. 编号: 188345中文名称: 多肽标签S-tag 、S标签肽英文名: S-tag peptide单字母: H2N-KETAAAKFERQHMDS-OH三字母: H2N-Lys-Glu-Thr-Ala-Ala-A…

mysql 从入门到放弃— 数据库设计

之前我们已经了解了 mysql 的基本增删改查 mysql 从入门到放弃——基本约束以及语法 现在我们系统的进行一遍数据库的设计,建议收藏 ~~ 直接进入主题 来个例子:下面我们将围绕这个例子来进行数据库的设计 我们就来简单的模拟 大学教务处的选课 系统 …

vue-生成二维码【生成、点击输入框内叉号移除生成的二维码、输入框聚焦】

博主介绍 📢点击下列内容可跳转对应的界面,查看更多精彩内容! 🍎主页:水香木鱼 🍍专栏:后台管理系统 文章目录 简介:这是一篇有关【vue-生成二维码【生成、点击输入框内叉号移除生成…

Cortex-M架构MCU位带操作最详细解析(主要以STM32为例,包括判断哪些MCU可用)

Cortex-M架构MCU位带操作最详细解析(主要以STM32为例,包括判断哪些MCU可用) 代码实践部分直接跳转: https://blog.csdn.net/weixin_53403301/article/details/125543844 一、位带操作理论及实践 位带操作的概念其实30年前就有了…

FlutterWeb性能优化探索与实践

美团外卖商家端基于 FlutterWeb 的技术探索已久,目前在多个业务中落地了App、PC、H5的多端复用,有效提升了产研的整体效率。在这过程中,性能问题是我们面临的最大挑战,本文结合实际业务场景进行思考,介绍美团外卖商家端在 FlutterWeb 性能优化上所进行的探索和实践,希望对…

【原生Ajax】全面了解xhr的概念与使用。

✍️ 作者简介: 前端新手学习中。 💂 作者主页: 作者主页查看更多前端教学 🎓 专栏分享:css重难点教学 Node.js教学 从头开始学习 ajax学习 文章目录XHR的基本使用  什么是XHR  使用xhr发起GET请求  了解xhr对象的readyState属性  使…

婴儿肠绞痛怎么办?

婴儿肠绞痛的原因婴儿绞痛是婴儿生活中最难解释的现象之一。没有人知道为什么有些婴儿比其他婴儿绞痛更严重,但有很多关于绞痛的理论。其中一个原因可能是一些婴儿的消化系统更不成熟或更敏感。婴儿消化道中用于分解食物的消化酶或消化液很少,尤其是淀粉…

图像锐化一:几个常见的滤波核

文章目录1.滤波核2.代码3. 效果分析示例1.示例2.图像锐化和图像平滑相对应,前者用于增强细节表现,后者一般用于降噪在图像锐化时,往往会 1. 放大 噪声,2. 引入aritfact, 3. 振铃效应 等负面效果 因此需要分析相关锐化方法的效果和…

计算机里一半的部件是什么

解码器 在下图中,“a”和“b”是来自左侧的输入。它们都连接到NOT门。NOT门产生与其输入相反的输入。页面上有四条垂直线,分别来自“a”和“b”以及“a”与“b”的反数,因此,对于每个“a”和“b”,页面上都有两条导线&…

Jira—使用 JMX 接口进行实时监控

使用 JMX 接口进行实时监控 什么是 JMX? JMX(Java Management Extensions) 是一种用于监视和管理 Java 应用程序的技术。JMX 使用称为 MBean(托管 Bean)的对象来公开应用程序中的数据和资源。 对于 Jira Server 或 Jira Data Center 的大型实例,启用 JMX 可以让您更轻松…