Page 121 - 智慧园区物联网平台应用与行业分析
P. 121
» 第二章 智慧园区的技术实现
SOA 设计必须理解业务需求与可用服务间的动态关系,以及提供这层抽象的底层技术。
②业务敏捷性是基本的业务需求。SOA 不处理具体的业务需求,而是考虑下一层
抽象,应对需求变化的能力在于“原需求”。整个架构必须反映业务敏捷的需求,因
为任何瓶颈都会破坏整个架构的灵活性。
(四)SOA(面向服务架构)基础技术架构
要运行和管理 SOA 应用程序,就需要具体技术实现 SOA 基础,这是 SOA 平台
的一个部分。SOA 基础必须支持所有的相关标准和需要的运行时容器。
SOA 的体系中包含了三种角色。
1. 服务提供者
服务提供者为处理一系列特定任务的软件资源提供服务接口,它发布自己的服务,
并且对使用自身服务的请求进行响应。它将自己的服务和接口契约发布到服务注册中
心,以便服务使用者可以发现和访问该服务。
2. 服务请求者
服务使用者是一个应用程序、一个软件模块或需要一个服务的另一个服务。它发
起对注册中心中的服务的查询,通过传输绑定服务,并且执行服务功能。服务使用者
根据接口契约来执行服务。
3. 服务注册中心
服务注册中心是服务发现的支持者。它包含一个可用服务的存储库,并允许感兴
趣的服务使用者查找服务提供者接口。SOA 中的实体都具有服务请求者,服务提供者
和服务注册中心这三种角色之中的一种或多种,这三种角色之间的关系如图 2-20 所示。
图 2-20 SOA 架构角色
SOA 在这三个角色之间定义了三种操作:
①发布(Publish):使服务提供者可以向服务代理注册自己的功能及访问接口。
②查找(Find):使服务请求者可以通过服务代理查找特定种类的服务,这些服
务都是由上述中的服务提供者给出的。
109

