天天看点

微服务

ps:在面试时候问到微服务,而自己对此一无所知,真的是阅历限制了自己的想象。

微服务的定义和优缺点

先了解一下与微服务对应的单体式(Monolithic)式架构。在Monolithic架构中,系统通常采用分层架构模式,按技术维度对系统进行划分,比如持久化层、业务逻辑层、表示层。 Monolithic架构主要存在以下问题:

  1. 系统间通常以API的形式互相访问,耦合紧密导致难以维护;
  2. 各业务领域需要采用相同的技术栈,难以快速应用新技术;
  3. 对系统的任何修改都必须整个系统一起重新部署/升级,运维成本高;
  4. 在系统负载增加时,难以进行水平扩展;
  5. 当系统中一处出现问题,会影响整个系统;

微服务架构是一种架构风格,它将一个复杂的应用拆分成多个独立自治的服务,服务与服务间通过松耦合的形式交互。

主要特点:单一职责,自治

微服务优点:逻辑清晰、简化部署、可扩展、灵活组合、技术异构、高可靠

缺点:复杂度高(异常处理,一致性、代码复用),运维复杂(整体了解)、影响性能(时延)

待续。。。

上一篇: 微服务
下一篇: 微服务