应用程序结构:概念视图-8应用程序(企业结构)

本页内容

业务服务业务服务
剖析业务服务剖析业务服务
用户接口处理用户接口处理
概念上的应用程序结构概念上的应用程序结构
应用程序小结应用程序小结

业务服务

在基于服务的体系结构中,应用程序由处理服务(请参阅处理)以及实现业务功能和用户接口 (UI) 的更基本的服务组成。

在剖析业务服务时,您将看到它的体系结构与下面图 1 介绍的处理中所描述的体系结构非常类似。不同之处在于下图已用组件将服务替换。

但是,请注意以下几点:

与组件相比,较松的耦合对于服务来说更为重要;组件允许使用较为紧密的耦合。这意味着,根据粒度的要求,您可以适当放宽上述讨论的使用处理服务的准则。 对于较细粒度的功能,通过解耦将会削弱优势。

处理组件可以共享原子事务处理,从而极大简化了业务服务当中的处理设计。

组件可以直接调用;而且不需要明确的消息传送。 从而简化了异常情况的处理过程。

剖析业务服务

图 1.

剖析业务服务

这一部分对业务服务进行了讨论。 业务服务可以创建作为多层系统。 典型的业务服务由以下四层的组合构成:

服务接口 。 服务接口公开了将被外部世界看到的功能。 添加接口不仅更易于公开明确的服务接口,从而为履行协定提供了方便,而且更易于隐藏服务中设计为供内部使用的接口。

业务处理层。 业务处理层负责控制业务处理;它按照步骤定义业务处理,除了组装业务逻辑层的请求之外,它并不执行任何数据操作。

业务实体层。 业务实体层负责执行需要完成的任务;它负责实现处理的各个步骤。 通常使用业务实体来设计该层。 业务实体实现业务规则,并不存储业务数据,但是可以保持对存储数据的数据实体的引用。

数据表示层。 数据表示层以便于业务逻辑层使用的形式保留数据。 该层只拥有关于数据操作的通用逻辑,并不包含有关业务域的具体知识。 数据表示层使用数据访问器来存储数据。 它通常使用存储过程来执行以下操作:在数据库和这些访问器之间来回传输数据,以及反映数据库布局和数据访问器之间结构的区别;从而无需更改代码即可自由变换数据库的设计,并且无需更改表即可自由改变内部数据表示形式。

这种可选视图如图 2 所示。

业务服务中的分层

2. 业务服务中的分层

将业务规则与内部数据表示分离开可以充分利用数据库使用数据的能力,同时无需复制逻辑即可隔离规则。 例如,需要使用按客户姓名排序的定单列表时,数据库将提供获取该列表的有效方法。 请求的处理流程如下:首先依次通过接口和处理层,然后直接通过业务逻辑层,最后进入数据表示层。 该层将用公式表述对数据库的请求,并生成内部数据表示。 现在无需再做进一步操作即可将响应直接返回请求方。

数据的内部表示不必与数据库的布局保持相同;存储过程用于反映两者之间的差别。 并且内部表示也不必与向外部世界公开的格式保持一致。 可以计算其他一些信息,并将这些信息添加到外部结构中;也可以筛选一些私人信息。 有时,可能需要公开多种格式,以满足组织中不同角色的需求或满足对这些角色的访问限制要求。

图 3 解释了服务如何以松散方式耦合紧密耦合的系统。

图 3. 以松散方式耦合紧密耦合的系统

3. 以松散方式耦合紧密耦合的系统

服务结构完全用于以松散方式耦合紧密耦合系统。 虽然它的设计目标并不是紧密耦合服务中的组件,但是优秀的设计结果通常是服务中的组件紧密耦合。

用户接口处理

用户接口处理向业务处理提供类似功能,但是它们使用用户接口服务,而不是业务服务。

系统的用户接口 (UI) 由执行一些任务(如从用户那里请求信息或将信息传递到用户)的服务或组件组成。 这些服务可能以 Microsoft Windows 窗体或 ASP.NET 控件这样的技术实现,这些技术是便于以后重用的理想候选技术。 您可以使用一个处理来控制用户接口元素之间的交互,以将操作管理从用户接口元素的核心业务功能中分离出来。

图 4 解释了这一过程的实现方式。

图 4. 用户接口处理

4. 解释了这一过程的实现方式

使用处理来控制用户接口服务可以帮助您将特定设备的特定用户接口实现与更常见的对话流和后端交互分离开。

概念上的应用程序结构

图 5 解释了通过用户接口处理进行用户接口服务通信,然后与控制业务服务的业务处理服务进行通信的原则。 以上通信两端的处理负责进行交互;这些层之间的协定是最需要注意的,因为这可能由多个用户接口通道使用的约定。

图 5. 概念上的应用程序结构

5. 概念上的应用程序结构

图 5 由两个彼此通信的等分部分组成: 应用程序的用户接口部分和应用程序的业务部分。 结构的基础结构部分从功能中分离出来。 图 6 对这一观点进行了解释。

概念上的应用程序结构的两个等分部分

6. 概念上的应用程序结构的两个等分部分

深入探讨这一观点,您会发现在很多情况下将拥有与其他业务处理进行通信的业务处理。 在图 7 中对此进行了解释。

概念上的应用程序结构中的业务处理

7. 概念上的应用程序结构中的业务处理

应用程序小结

应用程序由处理服务以及业务服务和 UI 服务构成。 处理服务控制业务服务和 UI 服务的交互。 业务服务通常由四层组成: 服务接口、业务处理层、业务实体层和数据表示层。

此模式对于传统的应用程序和企业到企业方案有效,前者拥有与业务服务进行通信的用户接口,后者的业务服务可以彼此进行通信。

转到原英文页面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值