网络安全 | 什么是负载均衡器?

负载均衡器

关注WX: CodingTechWork

介绍

  1. 负载均衡是在多个服务器之间有效分配网络流量的过程。
  2. 负载均衡的目的是优化应用程序的可用性,并确保良好的终端用户体验。
  3. 负载均衡可协助高流量网站和云计算应用程序应对数百万个用户请求,从而保证客户请求不会出现延迟。

优势

可用性

  1. 负载均衡器在将请求路由到服务器之前会对服务器执行运行状况检查。
  2. 如果一台服务器即将出现故障,或者因维护或升级而处于脱机状态,负载均衡会自动将工作负载重新路由到正在运行的服务器,以避免服务中断并保持高可用性。

可扩展性

  1. 负载均衡支持按需、高性能的基础架构,可以处理最重或最轻的网络流量负载。
  2. 负载均衡器可以根据需要添加或删除物理服务器或虚拟服务器,从而使可扩展性变得简单且自动化。

安全性

  1. 负载均衡器可以包括 SSL 加密、Web 应用程序防火墙 (WAF) 和多重身份验证 (MFA) 等安全功能。
  2. 负载均衡器还可以合并到应用程序交付控制器 (ADC) 中以提高应用程序安全性。通过安全地路由或卸载网络流量,负载均衡可以帮助防御分布式拒绝服务 (DDoS) 攻击等安全风险。

原理

  1. 负载均衡可以通过多种方式实现,如硬件和软件负载均衡。
  2. 硬件负载均衡器是在本地安装和维护的物理设备。
  3. 软件负载均衡器是安装在私有服务器上的应用程序或作为托管云服务(云负载均衡)提供的应用程序。
  4. 负载均衡器的工作原理都是实时调解传入的客户端请求,并确定哪些后端服务器最有能力处理这些请求。为了防止单台服务器过载,负载均衡器会将请求路由到本地或服务器场或云数据中心中托管的任意数量的可用服务器。
  5. 分配的服务器收到请求后,将通过负载均衡器响应客户端。然后,负载均衡器通过将客户端的 IP 地址与所选服务器的 IP 地址进行匹配来完成服务器到客户端的连接。然后,客户端和服务器就能够通信并执行请求的任务,直到会话完成。
  6. 如果网络流量出现峰值,负载均衡器可能会使更多服务器联机以满足需求。或者,如果网络活动停滞,负载均衡器可能会减少可用服务器池。它还可以通过将流量路由到缓存服务器来协助网络缓存,在缓存服务器上临时存储之前的用户请求。

算法

循环法

  1. 该算法使用域名系统 (DNS) 以连续轮换的方式将请求按顺序分配给每个服务器。
  2. 循环法是最基本的负载均衡方法,因为它只使用每个服务器的名称来决定哪个服务器将接收下一个传入请求。

加权循环法

  1. 该算法中的每个服务器还被分配了一个“权重”。
  2. 权重决定哪些服务器应优先于其他服务器来处理传入请求。
  3. 管理员根据每台服务器的容量和网络需求决定如何对其进行加权。

IP散列

  1. 计算将传入请求的 IP 地址简化(或散列)为称为散列键的较小值。
  2. 使用这个唯一的散列键(代表用户的 IP 地址)作为决定如何将请求路由到特定服务器的基础。

最少连接数

  1. 当收到新的客户端请求时,该算法会优先考虑活动连接数最少的服务器。
  2. 此方法有助于防止服务器连接过载,并始终保持服务器之间的负载一致。

最短响应时间

  1. 该算法结合了最少连接数方法和最短服务器平均响应时间。
  2. 将评估连接数以及服务器执行请求和发送响应所需的时间。
  3. 活动连接最少的最快服务器将收到传入请求。

类型

网络负载均衡器

  1. 网络负载均衡器可优化局域网和广域网之间的流量并减少延迟。
  2. 它们使用 IP 地址和目标端口等网络信息以及 TCP 和 UDP 协议来路由网络流量,并提供足够的吞吐量来满足用户需求。

应用程序负载均衡器

  1. 这些负载均衡器使用 URL、SSL 会话和 HTTP 头等应用程序内容来路由 API 请求流量。
  2. 由于多个应用程序服务器中存在重复的功能,因此检查应用程序级内容有助于确定哪些服务器可以快速可靠地满足特定请求。

虚拟负载均衡器

  1. 随着虚拟化和 VMware 技术的兴起,虚拟负载均衡器现在被用来优化服务器、虚拟机和容器之间的流量。
  2. Kubernetes 等开源容器编排工具提供虚拟负载均衡功能,可在集群中容器的节点之间路由请求。

全局服务器负载均衡器

  1. 这种类型的负载均衡器将流量路由到多个地理位置的服务器,以确保应用程序的可用性。
  2. 用户请求可以分配到最近的可用服务器(近源),或者如果服务器出现故障,则可以分配到具有可用服务器的另一个位置。
  3. 这种故障转移功能使全局服务器负载均衡成为灾难恢复的重要组成部分。

参考:https://developer.ibm.com/

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

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

相关文章

2012年认证杯SPSSPRO杯数学建模C题(第二阶段)碎片化趋势下的奥运会商业模式全过程文档及程序

2012年认证杯SPSSPRO杯数学建模 C题 碎片化趋势下的奥运会商业模式 原题再现: 从 1984 年的美国洛杉矶奥运会开始,奥运会就不在成为一个“非卖品”,它在向观众诠释更高更快更强的体育精神的同时,也在攫取着巨大的商业价值&#…

颜色空间/模型(RGB, YUV,CMY/CMYK, HSI, HSV等)

什么是颜色 颜色是通过眼、脑和我们的生活经验所产生的对光的视觉感受,我们肉眼所见到的光线,是由波长范围很窄的电磁波产生的,不同波长的电磁波表现为不同的颜色,对色彩的辨认是肉眼受到电磁波辐射能刺激后所引起的视觉神经感觉…

51单片机实验02- P0口流水灯实验

目录 一、实验的背景和意义 二、实验目的 三、实验步骤 四、实验仪器 五、实验任务及要求 1,从led4开始右移 1)思路 ①起始灯 (led4) ②右移 2)效果 3)代码 2,从其他小灯并向右依次…

面向C++程序员的Rust教程(二)

先序文章请看: 面向C程序员的Rust教程(一) 所有权与移动语义 要说Rust语言跟其他语言最大的区别,那笔者觉得非数这个所有权和移动语义莫属。 深浅复制 对于绝大多数语言来说,变量/对象之间的赋值通常都是复制语义。…

微信开发工具——进行网页授权

微信开发工具——进行网页授权 微信公众平台设置 1.在首页创建好自己的订阅号 网站:https://mp.weixin.qq.com/ 点击立即注册,在选择订阅号(个人创建使用) 之后按流程填写后,点击设置与开发-------->基本配置,这…

JAVA八股--redis

JAVA八股--redis 如何保证Redis和数据库数据一致性redisson实现的分布式锁的主从一致性Redis脑裂现象及解决方案介绍I/O多路复用模型undo log 和 redo log(没掌握MyISAM 和 InnoDB 有什么区别? 如何保证Redis和数据库数据一致性 关于异步通知中消息队列…

Kubernetes(k8s):精通 Pod 操作的关键命令

Kubernetes(k8s):精通 Pod 操作的关键命令 1、查看 Pod 列表2、 查看 Pod 的详细信息3、创建 Pod4、删除 Pod5、获取 Pod 日志6、进入 Pod 执行命令7、暂停和启动 Pod8、改变 Pod 副本数量9、查看当前部署中使用的镜像版本10、滚动更新 Pod11…

基于Java+SpringBoot+Mybaties+layui+Vue+elememt 实习管理系统 的设计与实现

一.项目介绍 前台功能:用户进入系统可以实现首页,系统公告,个人中心,后台管理等功能进行操作 后台由管理员,实习单位,教师和学生,主要功能包括首页,个人中心,班级管理&am…

【C++学习】哈希的应用—位图与布隆过滤器

目录 1.位图1.1位图的概念1.2位图的实现3.位图的应用 2.布隆过滤器2.1 布隆过滤器提出2.2布隆过滤器概念2.3如何选择哈希函数个数和布隆过滤器长度2.4布隆过滤器的实现2.4.1布隆过滤器插入操作2.4.2布隆过滤器查找操作2.4.3 布隆过滤器删除 2.5 布隆过滤器优点2.6布隆过滤器缺陷…

Linux:make/makefile的使用

一、什么是makefile/make 会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力 一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的 规则来指定,哪些文件需要先编译&am…

设置Chrome打开链接在新标签页显示

Chrome版本 版本 123.0.6312.106(正式版本) (64 位) 下面这两个页面都有设置按钮: https://www.google.com/?pli1或者https://www.google.com/?hlzh-CN 要先退出账号,要不然看不到右下角的 “设置” 。…

TCP/IP协议、HTTP协议和FTP协议等网络协议包简介

文章目录 一、常见的网络协议二、TCP/IP协议1、TCP/IP协议模型被划分为四个层次2、TCP/IP五层模型3、TCP/IP七层模型 三、FTP网络协议四、Http网络协议1、Http网络协议简介2、Http网络协议的内容3、HTTP请求协议包组成4、HTTP响应协议包组成 一、常见的网络协议 常见的网络协议…

vivado 配置存储器器件编程2

为双 QSPI (x8) 器件创建配置存储器文件 您可使用 write_cfgmem Tcl 命令来为双 QSPI (x8) 器件生成 .mcs 镜像。此命令会将配置数据自动拆分为 2 个独立 的 .mcs 文件。 注释 : 为 SPIx8 生成 .mcs 时指定的大小即为这 2 个四通道闪存器件的总大小。…

QA测试开发工程师面试题满分问答5: 内存溢出和内存泄漏问题

概念阐述 内存溢出(Memory Overflow)和内存泄漏(Memory Leak)是与计算机程序中的内存管理相关的问题,它们描述了不同的情况。 内存溢出是指程序在申请内存时,要求的内存超出了系统所能提供的可用内存资源…

SSM框架学习——Eclipse创建Spring MVC maven项目

Spring MVC项目创建 什么是Spring MVC Spring MVC是Spring内置的,实现了Web MVC设计模式的框架。 它解决了Web开发过程中很多的问题,例如参数接收、表单验证等。另外它采用松散耦合可插拔组件等结构,具有相对较高的灵活性和扩展性。 Spri…

vue创建项目下载动态路由v-for mounted websocket :style :class store使用说明

在Vue中创建一个项目,并整合动态路由、v-for、mounted生命周期钩子、WebSocket、:style、:class以及Vuex的store,涉及到多个Vue核心特性的使用。下面我将简要说明如何逐步整合这些特性。 1. 创建Vue项目 使用Vue CLI创建项目: 2. 配置动态路…

C++ 类(初篇)

类的引入 C语言中,结构体中只能定义变量,在C中,结构体内不仅可以定义变量,也可以定义函数。 而为了区分C和C我们将结构体重新命名成class去定义 类的定义 标准格式: class className {// 类体:由成员函…

【计算机网络】epoll

IO多路转接 - epoll 一、I/O多路转接之 epoll1. epoll 接口(1)epoll_create()(2)epoll_wait()(3)epoll_ctl() 2. epoll 原理3. epoll 的优点4. epoll 的使用5. epoll 的工作模式(1)水…

实验四 Java图形界面与事件处理(头歌)

实验四 Java图形界面与事件处理(头歌) 制作不易!点个关注!给大家带来更多的价值! 目录 实验四 Java图形界面与事件处理(头歌) 制作不易!点个关注!给大家带来更多的价值!代码如下: 代码如下&…

case语句

Oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645 CASE 语句的执行方式与 IF...THEN...ELSIF 语句的执行方式类似,但是它是通过一个表达式的值来决定执行哪个分支 CASE 选择器表达式 WHEN 条件 1 THEN 语句序列 …