本节提供了一些 Java Enterprise System 解决方案的逻辑体系结构示例。这些示例首先说明如何在多层体系结构的适当层布置逻辑组件,然后通过研究使用案例,分析组件间的关系。将本节中的逻辑体系结构示例用作了解 Java Enterprise System 解决方案中逻辑体系结构设计的基础。
第一个示例是一个基本的 Messaging Server 解决方案,说明了 Messaging Server 的逻辑互异组件如何与其他组件交互操作。第二示例说明一个基于身份的部署解决方案的逻辑体系结构,该方案可适用于拥有 1,000 到 5,000 名员工的中型企业。
下图说明了一个 Messaging Server 部署的基本逻辑体系结构。该逻辑体系结构仅显示 Messaging Server 要求的逻辑互异组件。后面的图中介绍了这些组件的关系。
通常,Messaging Server 的部署是包括其他 Java Enterprise System 组件的企业解决方案的组成部分,如基于身份的通信示例中所示。
下表介绍了Messaging Server 示例中显示的组件。
表 4–5 Messaging Server 逻辑体系结构中的组件
组件 |
说明 |
---|---|
电子邮件客户机 |
用于阅读和发送电子邮件的客户机应用程序。 |
Messaging Server 配置为消息传送代理 (Message Transfer Agent, MTA),以接收、路由、传输和发送电子邮件消息。 |
|
Messaging Server 配置为消息多路复用器 (Message Multiplexor, MMP),以路由至合适的消息存储的连接,进行检索和存储。MMP 访问 Directory Server,查找目录信息,以确定适合的消息存储。 |
|
Messaging Server 配置为消息存储,以进行电子邮件消息的检索和存储。 |
|
提供对 LDAP 目录数据的访问。 |
逻辑体系结构不为 Messaging Server 组件指定服务复制。例如,企业部署通常创建单独的入站和出站 MTA 实例,但Messaging Server 示例只显示一个 MTA 组件。将逻辑组件复制到多个实例是在部署设计阶段所作的设计决策。
使用案例帮助确定体系结构中的逻辑组件间的关系。根据使用案例映射组件间的交互,从而获得一个有助于部署设计的组件交互视图。
通常,在部署设计之前分析每个使用案例,以确定组件的交互。下述三个使用案例是 Messaging Server 的典型使用案例,显示了逻辑组件间的交互。
电子邮件客户机将登录信息发送到 Messaging Server Multiplexor (MMP)。
MMP 向 Directory Server 请求用户 ID 和密码验证。
Directory Server 将验证返回给 MMP。
MMP 向 Messaging Server Message Store (STR) 请求消息列表。
STR 向 Directory Server 请求用户的 LDAP 记录。
Directory Server 将用户的 LDAP 记录返回给 STR。
STR 将消息列表返回给 MMP。
MMP 将消息列表转发给电子邮件客户机。
电子邮件客户机向 Messaging Server Multiplexor (MMP) 请求要阅读的消息。
MMP 向 Messaging Server Message Store (STR) 请求消息。
STR 将消息返回给 MMP。
MMP 将消息转发给电子邮件客户机。
电子客户机将删除消息操作发送给 MMP。
MMP 将删除消息操作转发给 STR。
STR 将消息从数据库中删除,然后将确认发送给 MMP。
MMP 将删除确认转发给电子邮件客户机。
电子邮件客户机将在客户机中编写的消息发送给 Messaging Server Message Transfer Agent (MTA)。
MTA 向 Directory Server 请求用户 ID 和密码验证。
Directory Server 将验证返回给 MTA。
MTA 检查 Directory Server,获取每个收件人的目标域。
Directory Server 将每个收件人的目标域返回给 MTA。
MTA 将消息转发给每个收件人。
MTA 将消息转发给 Messaging Server Message Store (STR),在发件箱中存储消息。
MTA 将确认发送给电子邮件客户机。
此示例说明了面向拥有约 1,000 至 5,000 名员工的中型企业的基于身份的通信解决方案。通常,设计逻辑体系结构时需要彻底的业务分析及随后的详细的技术要求分析。但是,这是一个理论性示例,假定已确定以下业务需求:
企业员工需要对内部站点、通信服务、日历服务及其他资源的个性化访问。
企业范围的验证和授权提供对内部站点和其他服务的访问。
可跨越所有企业服务对单个身份进行跟踪,从而启动了可提供对内部站点和其他服务访问的单点登录 (single sign-on, SSO)。
此示例的使用案例将详细说明登录程序、阅读电子邮件、发送电子邮件、个性化门户、同步日历以及其他类似用户活动。
对于此种性质的部署解决方案,通常存在大量概括说明用户与该解决方案所提供服务的交互作用的详细使用案例。此示例着重说明用户从浏览器客户机登录门户时组件间的交互。此示例将登录方案分为以下两个使用案例:
用户登录,通过验证,然后 Portal Server 检索用户的门户配置。
Portal Server 检索要在 Web 客户机中显示的电子邮件和日历信息。
可将这两个使用案例视为一个扩展使用案例。但是在此示例中,为简单起见,单独对两个使用案例进行说明。
Web 浏览器客户机将用户 ID 和密码发送到 Portal Server。
Portal Server 向 Access Manager 请求验证。
Access Manager 向 Directory Server 请求用户 ID 和密码验证。
Directory Server 验证用户 ID 和密码。
Access Manager 向 Directory Server 请求用户配置文件。
Directory Server 返回用户配置文件。
Portal Server 向 Access Manager 请求用户显示配置文件。
Access Manager 返回门户配置。
门户配置在浏览器客户机中显示。
在成功登录、验证、检索门户配置后,Portal Server 向 Messaging Server MMP 请求电子邮件消息。
MMP 向 Messaging Server STR 请求消息列表。
STR 将消息列表返回给 MMP。
MMP 将消息标头转发给 Portal Server。
Portal Server 向 Communications Express 请求日历信息。
Communications Express 向 Calendar Server 后端请求日历信息。
Calendar Server 后端将日历信息返回给 Communications Express。
Communications Express 将日历信息转发给 Portal Server。
Portal Server 将所有频道信息发送给 Web 浏览器客户机。