转载于:https://www.jianshu.com/p/21238ae6107c
分布式
一个业务分拆多个子业务,部署在不同的服务器上。 然后通过一定的通信协议,能够让这些子业务之间相互通信,这就是分布式。本质来说就是将一个系统拆分为多个子系统并分布到不同设备上的过程。
集群
集群就是由多台服务器组成,共享数据存储,对外提供一致的服务。
总结
分布式 | 集群 |
---|---|
不同的业务模块部署在不同的服务器上或者同一个业务模块分拆多个子业务,部署在不同的服务器上,解决高并发的问题 | 同一个业务部署在多台机器上,提高系统可用性 |
一个程序或系统,只要运行在不同的机器上,就可以叫分布式,C/S架构也可以叫分布式。 | 只要是一堆机器,就可以叫集群,他们是不是一起协作着干活,这个谁也不知道 |
分布式系统则不强调这一点 | 集群一般是物理集中、统一管理的 |
分布式系统可能运行在一个集群上,也可能运行在不属于一个集群的多台(2台也算多台)机器上。 | 集群可能运行着一个或多个分布式系统,也可能根本没有运行分布式系统 |
分布式是相对中心化而来,强调的是任务在多个物理隔离的节点上进行。中心化带来的主要问题是可靠性,若中心节点宕机则整个系统不可用,分布式除了解决部分中心化问题,也倾向于分散负载,但分布式会带来很多的其他问题,最主要的就是一致性。 | 集群就是逻辑上处理同一任务的机器集合,可以属于同一机房,也可分属不同的机房。分布式这个概念可以运行在某个集群里面,某个集群也可作为分布式概念的一个节点。 |
分布式是指将不同的业务分布在不同的地方 | 集群指的是将几台服务器集中在一起,实现同一业务 |
分布式中的每一个节点,都可以做集群 | 集群并不一定就是分布式的 |
分布式是以缩短单个任务的执行时间来提升效率的 | 集群则是通过提高单位时间内执行的任务数来提升效率。 |