有同学问我分布式和集群到底是什么?都是多台服务器那不就是分布式吗?为啥还有集群呢?集群也是多台服务器为啥不叫分布式呢?

对于这些问题的混乱其实是没把分布式和集群理解到位。

首先,我们把架构分为单机和多机。单机没什么可说的,最经典的就是单机架构。多机的话我们可分为:分布式和集群。

没错,分布式和集群的基础就是多机,需要多台服务器,然后根据使用场景不同再细分为分布式和集群。

分布式和集群的区别

定义:

  • 分布式是将一个系统拆分为多个子系统,多个子系统部署在多个服务器上,多个服务器上的子系统协同合作完成一个特定任务。
  • 集群是将一个系统完整的部署到多个服务器上,每个服务器都能提供系统的所有服务,多个服务器通过负载均衡调度完成任务。

场景:

  • 分布式是解决系统中心化的问题。把一个大的问题拆分为多个小的问题,分别解决各个小问题,最终将解决完成后的各个小问题合并成最初的大问题。
  • 集群是解决系统请求压力的问题。把一个大的问题完整的复制为多个,部署在多个服务器上,每个服务器都有完整的系统,最终通过负载均衡来解决系统请求压力的问题。

区别:

  • 分布式是多个人在一起作不同的事。
  • 集群则是多个人在一起作相同的事。

分布式和集群的配合

在实际分布式架构系统中,分布式和集群并不是单独存在的,很多时候都是相互配合的。例如,分布式中的某个子任务节点,可能由一个集群来代替。

分布式系统先将任务分解为一个个独立的子任务,为了进一步提高子任务的效率,会复制多个子任务组成集群,通过负载均衡调度各个子任务。最后将各个子任务的结果通过分布式将结果归并。

正常情况下我们将系统架构分为单点和分布式,由于分布式架构都会包含集群,或者说分布式是建立在集群之上的,所以在实际的分布式架构设计中并不会把分布式和集群单独区分,而是统称为:分布式架构。

深入理解:分布式和集群相关推荐

  1. 理解分布式和集群的区别

    简单理解: 分布式:一个业务分拆多个子业务,部署在不同的服务器上 集群:同一个业务,部署在多个服务器上 一句话,就是:"分头做事"与"一堆人"的区别 详细理解: ...

  2. 分布式TensorFlow集群local server使用详解

    通过local server理解分布式TensorFlow集群的应用与实现. ​​简介 TensorFlow从0.8版本开始,支持分布式集群,并且自带了local server方便测试. Local ...

  3. 理解和实现分布式TensorFlow集群完整教程

    手把手教你搭建分布式集群,进入生产环境的TensorFlow 分布式TensorFlow简介 前一篇<分布式TensorFlow集群local server使用详解>我们介绍了分布式Ten ...

  4. 对分布式和集群的理解

    1.分布式可繁也可以简,最简单的分布式就是大家最常用的,在负载均衡服务器后加一堆web服务器,然后在上面搞一个缓存服务器来保存临时状态,后面共享一个数据库. 2.布式是相对中心化而来,强调的是任务在多 ...

  5. PHP面试分布式和集群的理解,集群与分布式,你们知道有什么区别吗?

    用一个例子介绍集群与分布式: 小餐馆原来只有一个厨师,切菜洗菜备料炒菜他都全干.后来餐馆的客人多了,厨房里一个厨师忙不过来,又请了个厨师,两个厨师都能炒一样的菜,这两个厨师的关 系是集群.为了让厨师专 ...

  6. 深入浅出Websocket(二)分布式Websocket集群

    前言 最近在构建两个系统的实时通信部分,总结一下所学. 这是一个系列文章,暂时主要构思四个部分 深入浅出Websocket(一)Websocket协议 深入浅出Websocket(二)分布式Webso ...

  7. 分布式 WebSocket 集群解决方案

    作者 | weixin_34194702 来源 | blog.csdn.net/weixin_34194702/article/details/88701309 问题起因 最近做项目时遇到了需要多用户 ...

  8. ElasticSearch 深入理解 三:集群部署设计

    ElasticSearch 深入理解 三:集群部署设计 ElasticSearch从名字中也可以知道,它的Elastic跟Search是同等重要的,甚至以Elastic为主要导向. Elastic即可 ...

  9. 保障IDC安全:分布式HIDS集群架构设计

    背景 近年来,互联网上安全事件频发,企业信息安全越来越受到重视,而IDC服务器安全又是纵深防御体系中的重要一环.保障IDC安全,常用的是基于主机型入侵检测系统Host-based Intrusion ...

最新文章

  1. MyBatis基础-CRUD
  2. [转]DPM2012系列之十:备份exchange2010数据库
  3. LeetCode 17. Letter Combinations of a Phone Number--笔试题--C++,Python解法
  4. 胡扯JS系列-匿名函数的自动运行
  5. javascript判断浏览器核心
  6. 学习CSS 不错网址
  7. U3D 通过预置对象实现手动创建精灵
  8. 操作篇 ###rip协议学习和理解##
  9. linux下面破解rar压缩包密码
  10. python中str和input_python中input()与raw_input()的区别分析
  11. mysql执行的list_CMD如何进入Mysql命令并执行相关查询
  12. 小汤学编程之JDBC番外篇——DBUtil工具类
  13. 力扣225-用队列实现栈(C++,附思路及优化思路,代码)
  14. 内边距怎么设置html,如何设置内边距
  15. 手机贴图压缩技术标准及作用
  16. 基于JAVA广西科技大学第一附属医院陪护椅管理计算机毕业设计源码+数据库+lw文档+系统+部署
  17. 计算机网络实验报告:【验证性实验】
  18. excel自动筛选_在Excel 2007中按选择自动筛选
  19. python导出数据到excel文件_Python笔记:把数据导出到Excel文件上
  20. linux raid member,文件挂载时报错“linux_raid_member”

热门文章

  1. Redis使用单线程却快到飞起的原因,全在这里了
  2. YOLOv4数据集制作与批量处理工具.py代码
  3. EMQX 常见端口说明
  4. pfw中totalFound有值,result却没有值
  5. Problem I: 打印字母菱形图案
  6. 华为麦芒7支持鸿蒙吗,支持两张电信卡!麒麟710芯片华为麦芒7发布:2399元
  7. 技术圈热议:阿里 GitHub 项目被爆出 刷 Star!这波又摊上事了...
  8. Simulink HDL Coder FPGA开发实践之 基本使用流程介绍
  9. 怎样花两年时间去面试一个人(对于我,重点是里面提及的经典书)
  10. Sentinel-1数据下载及基于SNAP的预处理