什么是SOA架构?soa架构特征是什么?

SOA架构是一个面向服务的架构,它是一个组件模型。SOA架构将应用程序的不同功能单元(称为服务)进行拆分,并通过在这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种各样的系统中的服务可以使用一种统一和通用的方式进行交互。

SOA架构将原来的单体架构按照功能细分为不同的子系统,SOA架构如下图所示。

由上图可知,一个完整的项目会分为多个模块,并且数据库也会有主库与从库两种,并且主库与从库是数据同步的,这样的SOA架构解决了1.1.1小节中单体式架构所遗留下的问题,但SOA本身也存在一些缺点。

SOA一般使用某种集中式管理,比如会有审查委员会、主架构师或架构委员会等部门来严格定义每个系统组件应当做什么,如何执行,相同类型的功能可能会在多个组件中分别定义和记录,每个组件使用的语言或者工具集可以是统一的,也可以不是。

在SOA架构中,系统和服务的界定比较模糊,而且服务的接口协议不固定,种类繁多,不利于系统维护。

soa架构特征是什么?

1、可重用
一个服务创建后能用于多个应用和业务流程。
2、松耦合
服务请求者到服务提供者的绑定与服务之间应该是松耦合的。因此,服务请求者不需要知道服务提供者实现的技术细节,例如程序语言、底层平台等等。
3、明确定义的接口
服务交互必须是明确定义的。Web服务描述语言(Web Services Description Language,WSDL)是用于描述服务请求者所要求的绑定到服务提供者的细节。WSDL不包括服务实现的任何技术细节。服务请求者不知道也不关心服务究竟是由哪种程序设计语言编写的。
4、无状态的服务设计
服务应该是独立的、自包含的请求,在实现时它不需要获取从一个请求到另一个请求的信息或状态。服务不应该依赖于其他服务的上下文和状态。当产生依赖时,它们可以定义成通用业务流程、函数和 数据模型。
5、基于开放标准
当前SOA的实现形式是Web服务,基于的是公开的W3C及其他公认标准.采用靠前代Web服务定义的SOAP、WSDL和UDDI以及第二代Web服务定义的WS-*来实现SOA(这里写自定义目录标题)

你们还有什么疑问么?

商务达