面向服务与微服务的区别

OA是一种传统的软件体系结构,通过应用程序的不同组件之间的网络通信协议实现向其他软件组件提供服务,在10多年前使用极为广泛。微服务架构某种意义上基于SOA进行发展的,但是微服务的创建仅限于一个特定的业务功能,在各个相互配合的组件中,各自是独立的,基本上没有集中式管理,各自的实现也可以使用不同的编程语言和不同的数据库。

但是微服务相比较SOA有以下几个优点:

1、微服务更加关注于解耦,不追求系统之间的相关性。

2、微服务的系统发生改变只需要构建一个新的服务,简单快捷,但是SOA则需要对整个系统进行修改。

3、微服务使用的协议一般都是轻量级的协议,就像HTTP、Thrift API等协议,但是SOA则是使用更为复杂多样的多种消息协议。微服务的容错性能会更好,即使一个微服务出现问题,其他的微服务也会正常工作。

4、每个微服务都有单独的数据库,SOA则是共享一个数据库。

5、微服务的规模更小,SOA则是一个较大的规模。SOA可以是一个整体,也可以是多个微服务组成的。

你可能感兴趣的:(dubbo)