概念:
集群是个物理形态,分布式是个工作方式。
1.分布式:一个业务分拆多个子业务,部署在不同的服务器上
2.集群:同一个业务,部署在多个服务器上
分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器集中在一起,实现同一业务。
分布式中的每一个节点,都可以做集群。而集群并不一定就是分布式的。
举例:就比如新浪网,访问的人多了,他可以做一个集群,前面放一个响应服务器,后面几台服务器完成同一业务,如果有业务访问的时候,响应服务器看哪台服务器的负载不是很重,就将给哪一台去完成。
而分布式,从窄意上理解,也跟集群差不多,但是它的组织比较松散,不像集群,有一个组织性,一台服务器垮了,其它的服务器可以顶上来。
分布式的每一个节点,都完成不同的业务,一个节点垮了,那这个业务就不可访问了。
简单说,分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率。
例如:如果一个任务由 10 个子任务组成,每个子任务单独执行需 1 小时,则在一台服务器上执行该任务需 10 小时。
采用分布式方案,提供 10 台服务器,每台服务器只负责处理一个子任务,不考虑子任务间的依赖关系,执行完这个任务只需一个小时。(这种工作模式的一个典型代表就是 Hadoop 的 Map/Reduce 分布式计算模型)
而采用集群方案,同样提供 10 台服务器,每台服务器都能独立处理这个任务。假设有 10 个任务同时到达,10 个服务器将同时工作,1 小时后,10 个任务同时完成,这样,整体来看,还是 1 小时内完成一个任务!
好的设计应该是分布式和集群的结合,先分布式再集群,具体实现就是业务拆分成很多子业务,然后针对每个子业务进行集群部署,这样每个子业务如果出了问题,整个系统完全不会受影响。
另外,还有一个概念和分布式比较相似,那就是微服务。
微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。

区别:
1.分布式

将一个大的系统划分为多个业务模块,业务模块分别部署到不同的机器上,各个业务模块之间通过接口进行数据交互。区别分布式的方式是根据不同机器不同业务。
上面:service A、B、C、D 分别是业务组件,通过API Geteway进行业务访问。
注:分布式需要做好事务管理。
分布式事务可参考:微服务架构的分布式事务解决方案
2.集群模式

集群模式是不同服务器部署同一套服务对外访问,实现服务的负载均衡。区别集群的方式是根据部署多台服务器业务是否相同。
注:集群模式需要做好session共享,确保在不同服务器切换的过程中不会因为没有获取到session而中止退出服务。
一般配置Nginx的负载容器实现:静态资源缓存、Session共享可以附带实现,Nginx支持5000个并发量。

分布式是否属于微服务?
答案是肯定的。微服务的意思也就是将模块拆分成一个独立的服务单元通过接口来实现数据的交互。

微服务架构
微服务的设计是为了不因为某个模块的升级和BUG影响现有的系统业务。微服务与分布式的细微差别是,微服务的应用不一定是分散在多个服务器上,他也可以是同一个服务器。


分布式和微服的架构很相似,只是部署的方式不一样而已。

集群、分布式、微服务概念和区别相关推荐

  1. 沙洋有几个微服务群_集群 分布式 微服务

    转自:https://blog.csdn.net/qq_37788067/article/details/79250623 概念: 集群是个物理形态,分布式是个工作方式. 1.分布式:一个业务分拆多个 ...

  2. 一文简述服务器架构的演变过程:集群—分布式—微服务

    一.单服务器架构 小猿公司创立初期准备搭建一个电商网站销售公司产品,因为公司创业初期用户量不大而且着急上线,在资金有限的情况下公司购买了一台服务器,将小猿团队开发的网站放到服务器上这便算是正式上线了. ...

  3. Redis 集群,分布式,微服务概念和区别理解

    概念: 集群是个物理形态,分布式是个工作方式. 分布式:一个业务分拆多个子业务,部署在不同的服务器上 集群:同一个业务,部署在多个服务器上 1:分布式是指将不同的业务分布在不同的地方.而集群指的是将几 ...

  4. 分布式和微服务区别_分布式、集群、微服务到底有啥区别?

    点击上方"不太厉害的程序猿",选择"置顶或者星标" 你关注的就是我关心的! 来源说明:部分信息来源于csdn 概念: 集群是个物理形态,分布式是个工作方式. 1 ...

  5. 分布式、集群、微服务的区别

    概念: 集群是个物理形态,分布式是个工作方式. 分布式:一个业务分拆多个子业务,部署在不同的服务器上 集群:同一个业务,部署在多个服务器上 1:分布式是指将不同的业务分布在不同的地方.而集群指的是将几 ...

  6. 集群、微服务与分布式

    集群: 同一个业务,部署在多个服务器上(不同的服务器运行同样的代码,干同一件事) 集群是指将多台服务器集中在一起,每台服务器都实现相同的业务,做相同的事情.如果一台死机,另一台可以起作用. 但是每台服 ...

  7. 2017微服务 mysql集群_微服务架构系列之Nacos集群搭建

    上回我们说到了<微服务架构系列之Nacos 配置核心概念>,这次我们讲讲Nacos 集群环境搭建. 集群模式跟我们平时进行扩容是一样的,可以通过 Nginx 转发到多个节点,如下图: 如果 ...

  8. 基SkyWalking实现对k8s集群中微服务的链路追踪

    1.思路如下: 1.sykwalking的安装配置(k8s集群部署配置) 2.sykwalking-agent探针的集成到微服务项目(是打成基础镜像里,然后指定参数(configMap中配置java项 ...

  9. DockerCompose快速部署分布式应用,集群部署微服务

    一.什么是DockerCompose? 该文件是一个文本文件,通过指令定义集群中的每个容器如何运行. 二.对比Docker命令: Compose文件:以下的文件就描述了一个项目,其中包含两个容器: 一 ...

最新文章

  1. ARM的突破:超级计算机和Mac
  2. css中的margin和padding
  3. windows中进程详解
  4. oracle 云服务器cpu升级,Oracle 10g RAC 升级(CPU Update)之--升级CRS
  5. 【代码段】UIView 部分圆角
  6. 开发高性能的WebService应用 zhuan
  7. qt tableWidget 表格控件使用
  8. 百练OJ:2760:数字三角形
  9. 怎么确保一个集合不能被修改?
  10. Android学习笔记:TabHost 和 FragmentTabHost(转)
  11. 【数据结构】二叉树的遍历及应用
  12. 20 个实例玩转 Java 8 Stream,写的太好了!
  13. 区块链 以太坊 全局变量 状态变量 局部变量 是什么 区别
  14. emc re 整改 超标_EMC测试及整改对策.ppt
  15. 2021SC@SDUSC Zxing开源代码(四)QR码的编码(一)
  16. 名帖55 隋代 楷书《苏孝慈墓志》
  17. c语言open()介绍
  18. 程式中檢查是否潤年的新方法
  19. python如何在手机运行内存_Python中对象的内存使用(一)
  20. 在Windows 2003下安装ZoneAlarm Pro 7

热门文章

  1. 王飞跃 | 社会机器:历史的起源与目标
  2. 2021年9月24日和学生隆兴的学术讨论
  3. java8新特性lambda表达式、函数式编程、方法引用和接口默认方法以及内部类访问外部变量
  4. 最小生成树的Prime算法的思想
  5. 医生的小助手,医疗AI赋能诊断新冠肺炎新方案!
  6. UC上云 为网络大型游戏保驾护航
  7. MaxCompute 费用暴涨之新增SQL分区裁剪失败
  8. Redis radix tree源码解析
  9. 主流微服务注册中心浅析和对比
  10. 阿里云大数据利器Maxcompute-使用mapjoin优化查询