在理解分布式和集群这两个概念之前,可以用以下例子来通俗的解释:
一个饭店,刚开始有一个厨子,这个厨子负责洗菜、切菜和炒菜。后来随着饭店越来越红火,一个厨子忙不过来了,就请了一个配菜工负责洗菜和切菜,而厨子只负责炒菜,那么现在这个厨子和配菜工之间的关系就可以理解为分布式;如果请来的不是一个配菜工,而是另外一个厨子的话,那么这两个厨子的关键就可以理解为集群。
分布式:不同的业务模块部署在不同的服务器上或者同一个业务模块分拆多个子业务,部署在不同的服务器上,解决高并发的问题
集群:同一个业务部署在多台机器上,提高系统可用性
集群是个物理形态,分布式是个工作方式。
只要是一堆机器,就可以叫集群,他们是不是一起协作着干活,这个谁也不知道;一个程序或系统,只要运行在不同的机器上,就可以叫分布式,嗯,C/S架构也可以叫分布式。
集群一般是物理集中、统一管理的,而分布式系统则不强调这一点。
所以,集群可能运行着一个或多个分布式系统,也可能根本没有运行分布式系统;分布式系统可能运行在一个集群上,也可能运行在不属于一个集群的多台(2台也算多台)机器上
链接:https://www.zhihu.com/question/20004877