群集技术

简介:

 群集技术

群集技术就是共同为客户机提供网络资源的一组计算机系统,其中每一台提供服务的计算机,称之为节点。将多台计算机组织起来协同工作模拟一台性能更强大的计算机解决问题。

群集的分类

(1)负载均衡群集 LB Load Blanching)负载均衡群集在多节点之间通过一定的算法分发网络或计算机处理负载,增加了吞吐量,提高了数据处理能力,同时又可以避免单点故障。

如大型门户网站在处理大量的并发连接请求时,建议使用LB

(2)高可用性群集HA High Availability)以减少服务中断即实时的在线请求为目的的服务器群集,可靠率99.999%(负载均衡的分发装置)

(3)高性能计算机群集HP (High Performance) 是以提高科学计算能力为目的的计算机群集技术。

负载均衡群集LB的分发装置 Director或是 dispatch  ,当有连接请求过来时,通过分发装置的调度的算法,发个后发的server,这个调度算法一共有是十种

分发装置的调度算法又分为固定的调度算法(fixed scheduling)和动态的调度算法(dynamic scheduling

其中固定的调度算法(不检测server现在的连接数和空闲的连接数,将客户发来的请求该给谁就给谁了通过下面算法)有四种

(1)Round Robin SchedulingRR)轮询算法 10个请求通过轮询分发如下:

轮询调度算法假设所有的处理性能都相同,不关心每台服务器的当前连接数和响应速度。当请求服务间隔时间变化比较大时,轮询调度算法容易导致服务器的负载不均衡。所以此种均衡算法适合于服务器组中的所有服务器都有相同的软硬件配置并且平均请求相对均衡的情况

(2)Weighted Round-Robin SchedulingWRR)加权轮询调度12个请求通过轮询分发如下:

    由于每台服务器的配置、安装的业务应用等不同,其处理能力会不一样。所以,我们根据服务器的不同处理能力,给每个服务器分配不同的权值,使其能够接受相应权值数的服务请求。调度器通过"加权轮询"调度算法根据真实服务器的不同处理能力来调度访问请求。这样可以保证处理能力强的服务器处理更多的访问流量。调度器可以自动问询真实服务器的负载情况,并动态地调整其权值 。加权轮叫调度也无需记录当前所有连接的状态,所以它也是一种无状态调度。 

(3)Destination Hashing Scheduling D-H)目标地址散列调度 就是将来自同一个客户的请求导上同一个Server,如访问一些大型购物网站

(4)Source Hashing Scheduling S-H)源地址散列调度  与目标地址调度正好相反

在实际应用中,源地址散列调度和目标地址散列调度可以结合使用在防火墙集群中,它们可以保证整个系统的唯一出入口。 

动态的调度算法(考虑哪些以建立的连接或这是那些链接是激活的,那些链接是断开的)有六种

1Least-Connection SchedulingLC)最少连接调度 就是把新的连接请求分配到当前连接数最小的服务器。它通过服务器当前所活跃的连接数来估计服务器的负载情况 ,每一台服务器都有连接记录。(overhead=激活数x256+非激活数,overhead最小的就分发给谁)

如果集群系统的真实服务器具有相近的系统性能,采用最少连接调度算法可以较好地均衡负载,当各个服务器的处理能力不同时,该算法并不理想。

2Weighted Least-Connection SchedulingWLC)加权最少连接调度,  根据服务器的不同处理能力,给每个服务器分配不同的权值,使其能够接受相应权值数的服务请求,是对LC的改进,

3Shortest Expected Delay SchedulingSED)最短期望延迟调度,就是为服务器分配预计最短延迟的网络连接。SED算法主要是对处理时间相对比较长的网络服务,不再考虑非活动连接数,可以说是对WLC的改进。

4Never Queue Scheduling NQ)无需等待调度,就是当有空闲服务器可用时,作业将被发送到空闲服务器,而不是等待速度较快的那一台。 2. 若没有空闲服务器可用时,作业将被发送到可用最小化预期延迟的那台服务器,是对SED的改进

5Locality-Based Least Connections SchedulingLBLC)基于局部的最少连接,是针对目标IP地址的负载均衡,目前主要用于Cache集群系统

6)(Locality-Based Least Connections with Replication SchedulingLBLCR)带复制的基于局部性最少连接调度,也是针对目标IP地址的负载均衡,目前主要用于Cache集群系统

群集的分发装置实现简单描述一下,

在硬件上有F5 (比较昂贵)

在软件上有 (ipvs(内核代码)+ipvsadm(用户端))这种架构就叫LVSLinux Virtual Server)已经内置到内核为2.4/2.linux系统中。

从层次上可以  4层交换  协议+端口  像F5  lvs

              7层       像squid   nginx


本文转自 abc16810 51CTO博客,原文链接:http://blog.51cto.com/abc16810/1102201


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
3月前
Dataphin登录系统重磅升级:界面化SSO配置、多账号登录功能上线
Dataphin V6.0推出界面化SSO配置与多账号体系登录功能,支持CAS、OAuth2.0、SAML、飞书等多种协议,解决旧版配置复杂、不支持多源登录等痛点,提升企业单点登录体验与管理效率。
285 0
|
Android开发 容器
鸿蒙开发:使用nestedScroll解决滑动冲突
nestedScroll属性的作用,主要是,用于设置嵌套滚动选项,设置前后两个方向的嵌套滚动模式,实现与父组件的滚动联动。
372 19
鸿蒙开发:使用nestedScroll解决滑动冲突
|
9月前
|
开发者 Python
2025年高教社杯A题——烟幕干扰弹的投放策略全国大学生数学建模(思路、代码、论文)
2025年高教社杯A题——烟幕干扰弹的投放策略全国大学生数学建模(思路、代码、论文)
1003 0
|
人工智能 Python
Python 中的 `and`, `or`, `not` 运算符
本文介绍了 Python 中的逻辑运算符 `and`、`or` 和 `not` 的基本用法及其特性。这些运算符主要用于布尔运算,特别是在条件判断和循环中非常有用。文章详细解释了每个运算符的功能,例如 `and` 检查所有表达式是否为真,`or` 检查是否有任意一个表达式为真,`not` 用于取反。此外,还提到这些运算符支持短路特性,并可应用于非布尔值场景。掌握这些运算符有助于编写更高效、简洁的代码。
917 11
|
IDE 数据可视化 Linux
在Linux中,如何比较两个文件差异?
在Linux中,如何比较两个文件差异?
|
存储 分布式计算 负载均衡
在Linux中,什么是集群,并且列出常见的集群技术。
在Linux中,什么是集群,并且列出常见的集群技术。
|
人工智能 自然语言处理 搜索推荐
“AI拜年”火遍朋友圈,营销的终局是拼技术
2025年春节前夕,AI拜年成为新潮流。百度通过“春节祝福语”活动,利用文心大模型4.0 Turbo生成个性化拜年贺卡,用户只需上传照片和输入文案,即可获得高度逼真的定制贺卡。这项技术凭借iRAG(检索增强生成)实现了高精度图像生成,避免了常见的“AI味儿”,使AI生成的内容既真实又富有文化内涵,为普通用户带来了专业级的创作体验,也为图像生成的产业化落地铺平了道路。
794 9
|
机器学习/深度学习 人工智能 自然语言处理
技术创新领域,AI(AIGC)是否会让TRIZ“下岗”?
法思诺创新直播间探讨了AI(AIGC)是否将取代TRIZ的问题。专家赵敏认为,AI与TRIZ在技术创新领域具有互补性,结合两者更务实。TRIZ提供结构化分析框架,AI加速数据处理和方案生成。DeepSeek、Gemini等AI也指出,二者各有优劣,应在复杂创新中协同使用。企业应建立双轨知识库,重构人机混合创新流程,实现全面升级。结论显示,AI与TRIZ互补远超竞争,结合二者是未来技术创新的关键。
554 0
|
算法 调度 C++
【OSTEP】进程调度: 介绍 | Convoy护航效应 | 最短任务优先(SJF) | 最短完成时间优先(STCF) | 轮转 RR | 结合I/O
【OSTEP】进程调度: 介绍 | Convoy护航效应 | 最短任务优先(SJF) | 最短完成时间优先(STCF) | 轮转 RR | 结合I/O
531 0
|
开发者
HTML 标签简写及全称
本文列举了 HTML 常用标签的简写及其英文全称和中文说明,包括 a (Anchor 锚)、abbr (Abbreviation 缩写词)、address (Address 地址) 等,帮助开发者快速理解和使用这些标签。