0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

集群和分布式有什么区别

汽车玩家 来源:今日头条 作者:咔咔侃技术 2020-05-03 18:24 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

经常听到MySql集群、Redis集群、分布式系统等概念,但是,很少有机会深究,到底什么集群,什么是分布式?在概念上这俩个词很接近,难道不需要区分?其实,非常有必要区分这两个概念,帮助我们对计算机的理论有更深入的理解。今天,我就尝试去解释一下这两个概念。

定义的区别

计算机集群(英语:computer cluster)是一组松散或紧密连接在一起工作的计算机。由于这些计算机协同工作,在许多方面它们可以被视为单个系统。与网格计算机不同,计算机集群将每个节点设置为执行相同的任务,由软件控制和调度。

维基百科的解释,关键词是:一组计算机、相同的任务。

分布式系统是一组电脑,透过网络相互连接传递消息与通信后并协调它们的行为而形成的系统。[1]组件之间彼此进行交互以实现一个共同的目标。把需要进行大量计算的工程数据分割成小块,由多台计算机分别计算,再上传运算结果后,将结果统一合并得出数据结论的科学。

维基百科的解释,关键词是:一组计算机、大计算分解。

集群和分布式,都是描述的一组计算机。集群的所有节点跑的是同样的任务,而分布式系统的节点跑的是分解后的任务。以修手机为例:维修一部手机要分为检测、维修、测试三个环节,为了提高效率,雇了10位工程师。如果每个工程师维修时,对每台手机进行检测、维修和测试,这就是集群的工作方式。如果2位工程师负责检测,5位工程师负责维修,剩下的3位工程师负责测试,这就是分布式的工作方式。

应用中的区别

在工作中,有时候并没有严格按照概念去理解这两个词。但是,回想一下什么时候用集群这个词,Redis集群、MySql集群、Nginx集群等等,按照上述的定义分析,这些集群里的每个节点,都是跑的同样的业务。微服务平台、云计算平台,这些平台的节点往往跑着不同的业务,组成强大的能力对外提供服务,这就是分布式系统。

集群的关键作用是提升并发处理能力。例如:一台MySql数据库不能满足性能需求,通过分表分库方案,部署多台实例;一个Redis节点不足以支撑业务,多个节点组成集群提高并发处理能力。但凡能够组成集群的,往往都是职责单一,功能目标明确的应用。相对来说,集群化是简单的,对服务几乎无侵入的,通过入口分发负载,应用与应用之间是等价的、无感知的。

分布式的关键作用是解耦以便于快速迭代。单机版应用能不能做的很强大、很复杂?当然可以!十几年前的SAP、Oracle ERP软件,这些业务巨复杂的系统,都是可以部署在一台服务器上的。通过模块化、SOA等设计理念,工程师们也可以协同工作写出复杂的应用。这些软件可能一年才需要升级一次,但互联网应用几乎每周都在发版升级,显然这种开发模式在互联网领域并不适用。通过把功能模块拆分出来,部署在不同的节点,按节点进行升级,实现快速迭代。

通过上面的讲述,这种理论模型的分布式,和真实的分布式还是不同。没有谁见过分布式系统中的业务模块,是单节点部署的。是的,没有错,现实中的分布式系统,其实是分布式+集群的综合体。这样的模式,结合了两者的优势,即实现了解耦,又做到了高并发能力,完美呼应了互联网对应用的需求。其他的概念,高可用、一致性等,都是在分布式+集群的理念上,发展出来的解决具体问题的方法论。

集群和分布式有什么区别

总结

本文从概念入手,“性格分裂”式的剖析了集群和分布式。我认为,这种剖析有利于理解概念,有利于理解“为什么”。在具体实践中,不能把两者对立起来,复杂的业务系统,往往都是两者的结合体。

针对我的理解,你有什么想说的吗?欢迎拍砖。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 集群
    +关注

    关注

    0

    文章

    130

    浏览量

    17600
  • 分布式
    +关注

    关注

    1

    文章

    1062

    浏览量

    76420
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    深入理解分布式共识算法 Raft

    “不可靠的网络”、“不稳定的时钟”和“节点的故障”都是在分布式系统中常见的问题,在文章开始前,我们先来看一下:如果在分布式系统中网络不可靠会发生什么样的问题。 以下 3 个服务构成的分布式
    的头像 发表于 11-27 14:51 71次阅读
    深入理解<b class='flag-5'>分布式</b>共识算法 Raft

    从 “单一控制” 到 “智能可视”:分布式系统与传统音视频控制系统的关键区别

    分布式可视化控制系统与传统的音视频控制系统的区别主要体现在以下几个方面: 1.系统架构:分布式可视化控制系统采用分布式架构,将音视频处理、数据通信等功能分散到多个节点上,各个节点之间通
    的头像 发表于 10-21 10:52 235次阅读

    标准集群和虚拟集群区别是什么?

    在日常工作中,经常有朋友会产生这样的疑问:标准集群和虚拟集群什么区别?实际上,标准集群具有统一的行业标准,例如PDT、DMR,具有专用的控
    的头像 发表于 09-19 16:52 553次阅读
    标准<b class='flag-5'>集群</b>和虚拟<b class='flag-5'>集群</b>的<b class='flag-5'>区别</b>是什么?

    【节能学院】Acrel-1000DP分布式光伏监控系统在奉贤平高食品 4.4MW 分布式光伏中应用

    摘要:在“双碳”和新型电力系统建设背景下,分布式光伏接入比例不断提高,对配电网电压、调度运行及调峰等环节造成强烈冲击。本文设计包含平台层、设备层二层架构体系的分布式光伏管控平台,以及小容量工商业
    的头像 发表于 08-23 08:04 3306次阅读
    【节能学院】Acrel-1000DP<b class='flag-5'>分布式</b>光伏监控系统在奉贤平高食品 4.4MW <b class='flag-5'>分布式</b>光伏中应用

    怎样确定分布式光伏集群通信网络的负载均衡策略?

    LZ-DZ100电能质量在线监测装 确定分布式光伏集群通信网络的负载均衡策略,需结合集群的网络拓扑、数据特征、设备特性及运行需求,通过 “现状分析→目标设定→策略设计→验证优化” 的流程逐步推进
    的头像 发表于 08-22 10:10 399次阅读
    怎样确定<b class='flag-5'>分布式</b>光伏<b class='flag-5'>集群</b>通信网络的负载均衡策略?

    GD32与STM32什么区别

    电子发烧友网站提供《GD32与STM32什么区别.docx》资料免费下载
    发表于 04-03 17:27 0次下载

    如何在基于Arm Neoverse平台的CPU上构建分布式Kubernetes集群

    在本文中,我们将以 X(原 Twitter)为例,演示如何在基于 Arm Neoverse 平台的 CPU 上构建分布式 Kubernetes 集群,以根据推文实时监控情绪变化。如此一来,你可以充分利用 Arm Neoverse 平台的计算基础,获得更好的性能、效率和出色
    的头像 发表于 03-25 15:58 655次阅读
    如何在基于Arm Neoverse平台的CPU上构建<b class='flag-5'>分布式</b>Kubernetes<b class='flag-5'>集群</b>

    分布式存储和集中式存储区别

    存储产品千千万,选来选去怎么办? 戴小编来献妙策,匹配需求不为难!分布式存储和集中式储是存储系统中十分重要的两种架构类型,但这两者区别?适合怎样的业务需求?今天戴小编就来一一解答。
    的头像 发表于 02-28 10:56 2259次阅读

    容器集群是什么意思?和服务器什么区别

    容器集群将多个容器组织起来,构建可伸缩、高可用的分布式系统。它具备资源动态分配、服务自动发现、负载均衡等特点,优势明显,包括高可用性、可伸缩性、快速部署与迭代等。在微服务架构、大数据处理、CI/CD等场景应用广泛。
    的头像 发表于 02-25 10:54 540次阅读

    分布式存储哪几种类型?

    分布式存储哪几种类型?分布式存储系统是一种将数据分散存储在多台独立节点上的技术,根据数据模型可分为键值存储、列式存储、文档存储和图形存储等类型;按数据存储单位可分为基于文件、块和对象的存储;按
    的头像 发表于 02-20 11:00 1125次阅读

    私有云和公有云什么区别

    私有云和公有云在多个方面存在显著的区别,以下是具体的比较,主机推荐小编为您整理发布私有云和公有云什么区别
    的头像 发表于 02-20 10:38 1497次阅读

    分布式云化数据库哪些类型

    分布式云化数据库哪些类型?分布式云化数据库主要类型包括:关系型分布式数据库、非关系型分布式数据库、新SQL
    的头像 发表于 01-15 09:43 879次阅读

    基于ptp的分布式系统设计

    在现代分布式系统中,精确的时间同步对于确保数据一致性、系统稳定性和性能至关重要。PTP(Precision Time Protocol)是一种网络协议,用于在分布式系统中实现高精度的时间同步
    的头像 发表于 12-29 10:09 977次阅读

    HarmonyOS Next 应用元服务开发-分布式数据对象迁移数据权限与基础数据

    使用分布式数据对象迁移数据,当需要迁移的数据较大(100KB以上)或需要迁移文件时,可以使用分布式数据对象。原理与接口说明详见分布式数据对象跨设备数据同步。 说明:自API 12起,由于直接使用跨
    发表于 12-24 09:40

    AFE4410和AFE4420都支持多个外接PD,这些分布式PD位置是可以随便放置的吗?

    channel都支持2个LED共阳极连接,对吗? AFE4410和AFE4420 都支持多个外接PD,这些分布式PD位置是可以随便放置的么?分布式PD和LED放置,会有很多PD-LED位置上的限制
    发表于 12-11 07:13