集群,分布式,微服务

枫叶上的雨露 2020-04-15

 

集群,分布式,微服务

1.集群

同一个业务,部署在多台服务器上(不同的服务器运行相同的代码,干同一件事);

通过添加服务器的数量,提供相同的服务,从而让服务器达到一个稳定、高效的状态。

好处:
  • 本来只有一台机器处理访问,现在有两台机器处理访问了,分担了压力。
  • 如果其中一台忘记缴费了,暂时用不了了。没关系,还有另一台可以用呢。

2.分布式

一个业务拆分成多个子业务,部署在不同的服务器上(不同的服务器,运行不同的代码,为了同一个目的)

好处:
  • 模块之间独立,各做各的事,便于扩展,复用性高
  • 高吞吐量。某个任务需要一个机器运行10个小时,将该任务用10台机器的分布式跑(将这个任务拆分成10个小任务),可能2个小时就跑完了

3.微服务

在微服务架构之前还有一个概念:SOA(Service-Oriented Architecture)-面向服务的体系架构。我认为的SOA只是一个架构模型的方法论,并不是一个明确而严谨的架构标准,只是后面很多人将SOA与The Open Group的SOA参考模型等同了,认为严格按照TOG-SOA标准的才算真正的SOA架构。SOA就已经提出的面向服务的架构思想,所以微服务应该算是SOA的一种演进吧。
微服务主要满足以下两点:
  • 单一职责的。一个微服务应该都是单一职责的,这才是“微”的体现,一个微服务解决一个业务问题(注意是一个业务问题而不是一个接口)。
  • 面向服务的。将自己的业务能力封装并对外提供服务,这是继承SOA的核心思想,一个微服务本身也可能使用到其它微服务的能力。

相关推荐