关于分布式/集群/微服务的一个理解

  • 分布式:不同的业务模块部署在不同的服务器上或者同一个业务模块分拆多个子业务,部署在不同的服务器上,解决高并发的问题

  • 集群:同一个业务部署在多台机器上,提高系统可用性

  • 微服务:一个大服务被拆成多个小服务,提高可拓展性以及可用性

举例

小饭店原来只有一个厨师,切菜洗菜备料炒菜全干。
后来客人多了,厨房一个厨师忙不过来,又请了个厨师,两个厨师都能炒一样的菜,这两个厨师的关系是集群。

为了让厨师专心炒菜,把菜做到极致,又请了个配菜师负责切菜,备菜,备料,厨师和配菜师的关系是分布式,
一个配菜师也忙不过来了,又请了个配菜师,两个配菜师关系是集群。

而微服务则是将厨房这整个部门分成: 一个专门的切菜部, 洗菜部, 备菜部, 炒菜部...,每个部如果忙不过来了,还可以继续横向扩展多个同部门