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