SOA与微服务有何本质差异?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1980个文字,预计阅读时间需要8分钟。
SOA(面向服务架构)是一种高级别的架构设计理念,通过在网络上使用基于通用通信语言的接口,实现软件组件的重复利用。那么,什么是服务呢?
SOASOA(Service-Oriented Architecture,面向服务的架构)是一种高层级的架构设计理念,可通过在网络上使用基于通用通信语言的服务接口,让软件组件可重复使用。
那么什么是服务呢?
所有业务功能都可以定义为一项服务,服务就意味着要对外提供开放的能力,当其他系统需要使用这项功能时,无须定制化开发。
服务可大可小,可简单也可复杂。例如,商品管理可以是一项服务,包括商品基本信息管理、供应商管理、入库管理等功能;而商品基本信息管理也可以作为一项独立的服务,供应商管理也可以作为一项独立的服务。到底是划分为粗粒度的服务,还是划分为细粒度的服务,需要根据企业的实际情况进行判断。
SOA 集成了独立部署和维护的服务,并允许它们相互通信和协同工作,以构建一个跨不同系统的软件应用。
那么它们是如何通信和协同工作的呢?
ESB(Enterprise Service Bus,企业服务总线)把企业中各个不同的服务连接在一起。就像计算机总线一样,把计算机的各个不同的设备连接在一起。
因为不同的服务是使用不同的技术实现的,各个独立的服务是异构的,如果没有统一的标准,则各个异构系统对外提供的接口是各式各样的。SOA 使用 ESB 来屏蔽异构系统对外提供各种不同的接口方式,以此来达到服务间高效的互联互通。ESB通过使用标准网络协议(如 SOAP、XML、JSON、MQ )来开放服务以发送请求或访问数据,实现与各种系统间的协议转换、数据转换、透明的动态路由等功能,消除了开发人员必须从头开始进行集成的困扰。
本文共计1980个文字,预计阅读时间需要8分钟。
SOA(面向服务架构)是一种高级别的架构设计理念,通过在网络上使用基于通用通信语言的接口,实现软件组件的重复利用。那么,什么是服务呢?
SOASOA(Service-Oriented Architecture,面向服务的架构)是一种高层级的架构设计理念,可通过在网络上使用基于通用通信语言的服务接口,让软件组件可重复使用。
那么什么是服务呢?
所有业务功能都可以定义为一项服务,服务就意味着要对外提供开放的能力,当其他系统需要使用这项功能时,无须定制化开发。
服务可大可小,可简单也可复杂。例如,商品管理可以是一项服务,包括商品基本信息管理、供应商管理、入库管理等功能;而商品基本信息管理也可以作为一项独立的服务,供应商管理也可以作为一项独立的服务。到底是划分为粗粒度的服务,还是划分为细粒度的服务,需要根据企业的实际情况进行判断。
SOA 集成了独立部署和维护的服务,并允许它们相互通信和协同工作,以构建一个跨不同系统的软件应用。
那么它们是如何通信和协同工作的呢?
ESB(Enterprise Service Bus,企业服务总线)把企业中各个不同的服务连接在一起。就像计算机总线一样,把计算机的各个不同的设备连接在一起。
因为不同的服务是使用不同的技术实现的,各个独立的服务是异构的,如果没有统一的标准,则各个异构系统对外提供的接口是各式各样的。SOA 使用 ESB 来屏蔽异构系统对外提供各种不同的接口方式,以此来达到服务间高效的互联互通。ESB通过使用标准网络协议(如 SOAP、XML、JSON、MQ )来开放服务以发送请求或访问数据,实现与各种系统间的协议转换、数据转换、透明的动态路由等功能,消除了开发人员必须从头开始进行集成的困扰。

