第 4 章
设计逻辑体系结构
本章利用中型企业通信部署的一组典型使用案例,阐述了逻辑体系结构的创建过程,并提供了该过程的一个示例。
逻辑体系结构确定各 Java Enterprise System 组件(及其依赖性),这些组件提供了满足部署业务目标所需的软件服务。技术要求阶段开发的使用案例通常会指出所需的软件服务。不过,往往可从业务分析阶段形成的业务要求中直接获得有关软件服务的信息。
逻辑体系结构加上要求分析阶段所确定的系统要求,便代表了一种部署方案。部署方案是进行部署体系结构设计的基础。下图显示的是逻辑设计阶段与业务分析、技术要求及部署设计各阶段间的关系。
图4-1 涉及其他部署规划阶段的逻辑设计
本章包括以下节:
部署规划示例
为协助说明部署规划过程,本节介绍了一个以典型的中型企业通信需要为基础的示例部署的各种使用案例。本白皮书的后续各章会沿用该示例部署来说明部署规划的各个步骤。
|
警告
|
该示例部署的使用案例、逻辑体系结构、部署体系结构及设计规范是部署规划过程各步骤的简化版本。
为便于说明,该示例经过了简化。该示例的设计并不完整,也从未实际构建或测试过。请勿将该示例用作任何欲计划的部署的蓝图。
|
|
该示例部署以一组使用案例为起点,这些使用案例源自通信部署的典型业务要求。下表对这些使用案例进行了总结。
表4-1 示例部署的使用案例
使用案例
|
说明
|
#1 单点登录
|
用户通过 Web 浏览器登录系统(用户名/ 口令)来存取企业服务,该服务可以是以下类型的服务:
- 定制门户 Web 页
- 基于 Web 的电子邮件页
- 日历界面
- 安全 Web 页
|
#2 打开个人门户屏幕
|
用户通过 Web 浏览器导航到个人门户屏幕。
|
#3 用户通过门户检查电子邮件
|
用户通过门户界面检查是否有新的电子邮件。
|
#4 用户通过门户检查安全 web 页
|
用户通过个人门户界面检查安全项目状态页。
|
#5 用户通过门户检查日历
|
用户通过门户界面检查每日日程。
|
#6 管理日历
|
用户通过基于 Web 的日历客户机安排日程。
|
#7 管理电子邮件
|
用户通过电子邮件客户端阅读和发送电子邮件。
|
可从这些使用案例中获得逻辑体系结构所需的服务,如以下节中所述。
Java Enterprise System 服务
逻辑体系结构设计自分析使用案例开始,这应有助于确定部署所需的服务。利用所掌握的 Java Enterprise System 知识和已往的设计经验,对各 Java Enterprise System 组件进行初步逻辑设计,使用案例所确定的服务是由这些组件提供的。
设计组件时,请考虑系统内的逻辑数据流动及提供服务的各组件间的依赖性。逻辑设计应反映这些依赖性,它们会影响设计中各组件间的数据流。
下图显示的是 Java Enterprise System 提供的组件。请利用该图和表4-2 来了解各 Java Enterprise System 组件间的相关性。一般而言,图中下方的组件为其上方的组件提供支持。
图4-2 Java Enterprise System 组件
下表列出了 Java Enterprise System 各组件间的实际相关性。
表4-2 Java Enterprise System 组件相关性
Java Enterprise System 组件
|
所支持的组件
|
所依赖的组件
|
Application Server
|
Identity Server Portal Server
|
Message Queue
|
Calendar Server
|
Portal Server(用于日历通道)
|
Directory Server Identity Server(用于单点登录)
Messaging Server(用于 Calendar Server 电子邮件通知服务)
|
Directory Proxy Server
|
无
|
Directory Server
|
Directory Server
|
Administration Server Calendar Server Directory Proxy Server Identity Server Instant Messaging Messaging Server Portal Server
|
无
|
Identity Server
|
Portal Server
如果配置了单点登录:
Calendar Server Instant Messaging Messaging Server
|
Directory Server Application Server 或 Web Server
|
Instant Messaging
|
Portal Server
|
Directory Server
|
Message Queue
|
Application Server
|
Directory Server(可选)
|
Messaging Server
|
Calendar Server
Portal Server(用于消息传送通道)
|
Directory Server Web Server Identity Server
|
Portal Server
|
Secure Remote Access
|
Directory Server Application Server 或 Web Server
如果配置为使用 Portal Server 通道:
Calendar Server Messaging Server Instant Messaging
|
Secure Remote Access
|
无
|
Portal Server
|
Web Server
|
Identity Server Portal Server
|
无
|
例如,要针对示例通信部署设计各 Java Enterprise System 组件,请对表4-1 中所列的各种使用案例进行分析。下表列出了该部署直接需要的组件,如各使用案例所示。
表4-3 支持示例使用案例的 Java Enterprise System 组件
Java Enterprise System 组件
|
使用案例
|
Portal Server
|
#1 单点登录
#2 打开个人门户屏幕
#3 用户通过门户检查电子邮件
#4 用户通过门户检查安全 web 页
#5 用户通过门户检查日历
|
Calendar Server
|
#1 单点登录
#5 用户通过门户检查日历
#6 管理日历
|
Messaging Server
|
#1 单点登录
#3 用户通过门户检查电子邮件
#7 管理电子邮件
|
还需要确定需要哪些 Java Enterprise System 组件来支持上面表4-3 中所列的各个组件。下表列出了这些附加组件。
表4-4 支持示例使用案例的附加组件
Java Enterprise System 组件
|
所提供的支持
|
Identity Server
|
支持 Portal Server。
对 Calendar Server 和 Messaging Server 提供单点登录支持。
|
Directory Server
|
支持 Identity Server 和 Portal Server。
|
Application Server或 Web Server
|
支持 Identity Server 和 Portal Server。(Identity Server 和 Portal Server 必须在 web 容器内运行。)
|
示例部署的逻辑体系结构
下方的图4-3 显示了示例部署的组件布局,并标明了该部署的用户入口点。该图将需要最多支持的服务 (Portal Server) 置于顶端,并在其下方列出提供支持的各个组件。它大致反映了各组件间的依赖性(如表4-2 中所述)。该图对提供 web 容器以支持 Portal Server 和 Identity Server 的组件未予描述,原因是这种依赖性并不反映部署中的数据流向。
图4-3 逻辑体系结构中的 Java Enterprise System 组件
示例部署的数据流动
对使用案例进行研究,以确定逻辑体系结构中各服务间的逻辑数据流动,并在布局图中标明这种流动。系统中各服务间的数据流动在进行性能和可用性估量时发挥着重要作用,如计划部署估量 中所述。
下图描述的是示例部署的数据流动。数据流动通过部署的使用案例以及各 Java Enterprise System 服务的依赖性来确定。
图4-4 示例部署的逻辑数据流动
图4-4 突出了能够同时满足使用案例 1 和 2 的数据流动,该数据流动代表以下内容:
- 用户通过基于 Web 的客户端发出登录请求
- Portal Server 依赖 Identity Server 提供验证服务
- Directory Server 向 Identity Server 提供的 LDAP 信息
图4-4 中的其余数据流动同样源自使用案例和服务器依赖性。
部署方案
完成的逻辑体系结构设计和要求分析阶段得出的系统要求一同构成了部署方案。部署方案是部署体系结构设计的起点,如第 5 章, “设计部署体系结构”中所述。