微服务与SOA的区别

Posted 那啥快看

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微服务与SOA的区别相关的知识,希望对你有一定的参考价值。

微服务架构强调的第一个重点就是业务系统需要彻底的组件化和服务化,原有的单个业务系统会拆分为多个可以独立开发,设计,运行和运维的小应用。这些小应用之间通过服务完成交互和集成。每个小应用从前端web ui,到控制层,逻辑层,数据库访问,数据库都完全是独立的一套。在这里我们不用组件而用小应用这个词更加合适,每个小应用除了完成自身本身的业务功能外,重点就是还需要消费外部其它应用暴露的服务,同时自身也将自身的能力朝外部发布为服务。

那么微服务跟SOA有什么区别呢,可以把微服务当做去除了ESB的SOA。ESB是SOA架构中的中心总线,设计图形应该是星形的,而微服务是去中心化的分布式软件架构。

总体我觉得SOA与微服务的区别在于如下几个方面:

  1. 微服务相比于SOA更加精细,微服务更多的以独立的进程的方式存在,互相之间并无影响;
  2. 微服务提供的接口方式更加通用化,例如HTTP RESTful方式,各种终端都可以调用,无关语言、平台限制;
  3. 微服务更倾向于分布式去中心化的部署方式,在互联网业务场景下更适合;

以上是关于微服务与SOA的区别的主要内容,如果未能解决你的问题,请参考以下文章

SOA架构与微服务的区别异同

微服务与SOA的区别

微服务与SOA

微服务架构的前世今生:SOA 与微服务的区别

SOA架构和微服务架构的区别(转载)

面试官灵魂三问:什么是SOA?什么是微服务?SOA和微服务有什么区别?