本章概括说明 Sun JavaTM Enterprise System (Java ES),讨论部署规划概念并介绍解决方案生命周期。该生命周期概述了规划和设计企业软件系统的各个步骤。本章包括以下部分:
Java Enterprise System 是一种软件框架结构,提供了可支持分布于网络或 Internet 环境中的企业级应用程序的一整套中间件服务。提供这些服务的 Java Enterprise System 组件均通过一个通用安装程序进行安装,在一组公用共享库上保持同步,并共享一个集成的用户身份和安全管理系统。
Java Enterprise System 组件提供的主要基础结构服务可分为以下类别:
门户服务。这些服务使移动办公员工、远程办公者、知识工作者、商业伙伴、供应商和客户能够从公司网络以外的任何地方通过 Internet 安全地访问各自的个性化企业门户。各用户团体可随时随地访问这些服务,同时还提供集成、聚合、个性化、安全性、移动访问及搜索功能。
通信和协作服务。利用这些服务,可以在多样用户团体间安全地进行信息交换。具体功能包括用户业务环境上下文中的消息传送、实时协作以及日程安排。
网络身份认证和安全服务。这些服务可确保在全局基础上对所有团体、应用程序和服务强制实施适当的访问控制策略,从而增强对公司主要信息资产的安全保护。这些服务使用信息库来存储和管理身份配置文件、访问权限以及应用程序和网络资源信息。
Web 和应用程序服务。这些服务可使分布式组件之间相互通信,并支持范围广泛的服务器、客户机和设备的应用程序的开发、部署和管理。这些服务均基于 Java 2 Platform, Enterprise Edition (J2EETM) 技术。
可用性服务。这些服务为应用程序和 Web 服务提供近乎连续的可用性和可伸缩性。
下表列出了上述服务类别,并指定了为每个类别提供服务的 Java Enterprise System 组件。
表 1–1 Java Enterprise System 服务类别
服务类别 |
Java Enterprise System 组件 |
---|---|
门户服务 |
Portal Server Portal Server Secure Remote Access Access Manager Directory Server Application Server 或 Web Server |
通信和协作服务 |
Messaging Server Calendar Server Instant Messaging Access Manager Directory Server Application Server 或 Web Server |
网络身份管理服务 |
Access Manager Directory Server Web Server |
Web 和应用程序服务 |
Application Server Message Queue Web Server |
可用性服务 |
Sun Cluster Sun Cluster 代理 |
有关 Java Enterprise System 服务、组件和 Java Enterprise System 体系结构概念的更多信息,参阅《Sun Java Enterprise System 2005Q4 技术概述》。
基于 Java Enterprise System 的部署解决方案通常分为两大类:
80:20 和 20:80 类别是一种广义的概括。所提供服务类型的具体百分比并不重要。但是,这个百分比表示了解决方案中所包含的定制量。
Java Enterprise System 因拥有由 Java ES 提供的丰富服务集而特别适用于进行 80:20 部署。例如,使用由 Java Enterprise System 提供的服务进行企业范围通信系统或门户系统的部署相对来说比较容易。
对于需要定制开发的部署,Java Enterprise System 支持定制开发服务和应用程序的创建和集成。
系统服务中列出的多数服务类别都可用于提供 80:20 部署。例如,通信和协作服务可为最终用户提供电子邮件、日历和即时消息传送服务,使用户能够聚集和个性化内容。同样,可利用“网络身份管理”和“企业门户”服务类别安装和配置企业范围应用程序,而不必开发或集成各种定制服务。
对于需要定制开发 J2EE 平台服务的企业级解决方案,可以利用提供 Java Enterprise System Web 和应用程序服务的 Application Server、Message Queue 或 Web Server。
不同的企业部署所需的定制开发服务数量会有很大差异。由于各 Java Enterprise System 服务间可进行互操作,因此可根据企业的具体需要自行创建服务套件。
使用 Java Enterprise System 的企业解决方案的规划、设计和实现很大程度上取决于当前的部署策略。对于初次规划部署解决方案的企业,其规划、设计和实现主要由企业的具体需要驱动。但是,初次部署解决方案并不是很普遍。更多的解决方案是使用 Java Enterprise System 增强已有的企业解决方案或对 Java Enterprise System 组件的早期版本进行升级。
替换或升级现有解决方案时,必须采取额外的规划、设计和实现步骤,以确保保留现有数据并将软件顺利升级到当前版本。执行本指南中所述的分析和设计时,请勿忘记替换和升级现有软件系统所需的准备和规划工作。
有关升级到 Java Enterprise System 当前版本和从其他应用程序进行迁移的策略的更多信息,参阅 Java Enterprise System 升级与迁移指南。
部署规划是 Java Enterprise System 解决方案成功实现的关键步骤。每个企业都有其自身的一组目标、要求和优先级需要考虑。成功的规划开始于分析企业的目标,并确定满足这些目标的业务需求。然后将业务需求转变为技术要求,这些技术要求将用作设计和实现满足企业目标的系统的基础。
成功的部署规划是精心准备、分析和设计的成果。规划过程的任何环节出现错误或失策都可能导致系统在许多方面出现问题。系统规划不良可能引发严重的问题。例如,系统可能达不到性能要求、难于维护、运行成本高、浪费资源或无法扩展,无法适应不断增长的需要。
下图所示的解决方案生命周期描述了基于 Java Enterprise System 的企业软件解决方案的规划、设计和实现步骤。生命周期是使部署项目不偏离轨道的有用工具。
生命周期由具有一定顺序的阶段组成。每个阶段都由相关任务组成,这些任务产生的输出将作为后续阶段的输入。每个阶段内的任务都是反复进行的,生成每个阶段的输出之前要求进行彻底的分析和设计。前面的阶段也可能反复进行。例如,在部署设计阶段,可能会发现前面阶段的分析不够充分,需要进行更多分析。
本章中的以下各节简要说明了生命周期的每个阶段。
业务分析阶段的任务是,定义部署项目的业务目标和阐述实现这些目标所必须满足的业务需求。阐述业务需求时,应将可能会对业务目标的实现能力产生影响的所有业务约束考虑在内。在整个解决方案生命周期中,业务分析阶段执行的分析将作为部署规划及最终的解决方案是否成功的标准。
在业务分析阶段创建业务需求文档,这些文档随后将用作技术要求阶段的输入。
有关业务分析阶段的更多信息,参阅第 2 章,业务分析
技术要求阶段以业务分析阶段中形成的业务需求为起点,任务是将这些要求转化为可用来设计部署体系结构的技术规范。技术要求指定服务质量 (quality of service, QoS) 功能,如性能、可用性、安全性等。
在技术要求阶段要创建含有以下信息的文档:
用户任务和使用模式分析
模拟用户与规划系统间交互的使用案例
源自业务需求的服务质量要求,将用户任务和使用模式的分析结果考虑在内
使用分析、使用案例和 QoS 要求文档所产生的信息将作为解决方案生命周期逻辑设计阶段的输入。使用分析还在部署设计阶段发挥着重要的作用。
在技术要求阶段,可能还会指定作为随后创建的服务级别协议 (service level agreements, SLA) 基础的服务级别要求。服务级别协议规定为维护系统所必需提供的客户支持的条款,并且通常在部署设计阶段作为项目核准的一部分签署。
有关技术要求的更多信息,参阅第 3 章,技术要求
在逻辑设计阶段中,以技术要求阶段的使用案例作为输入信息,确定实现解决方案所必需的 Java Enterprise System 组件。还需要确定对那些 Java ES 组件提供支持的组件,以及满足业务需求所必需的任何附加定制开发组件。然后在显示组件间相互关系的逻辑体系结构中映射组件。逻辑体系结构并不指定实现解决方案所需的硬件。
逻辑设计阶段的输出是逻辑体系结构。仅有逻辑体系结构还不足以开始部署设计,还需要来自技术要求阶段的 QoS 要求。逻辑体系结构和来自技术要求阶段的 QoS 要求形成一个部署方案。该部署方案是部署设计阶段的输入。
有关逻辑设计的更多信息,参阅第 4 章,逻辑设计
在部署设计阶段,将逻辑体系结构中指定的组件映射到物理环境,从而生成一个高级部署体系结构。还要创建一个实现规范,该规范提供关于如何构建部署体系结构的初级详细信息。另外,还要创建一系列详细说明实现软件解决方案不同方面的规划和规范。
项目核准出现在部署设计阶段。在项目核准阶段对部署的成本进行评估。如果获得核准,将签署部署实现合同,并获取构建项目所需的资源。通常,在制定了详细的实现规范后才开始项目核准。但是,也可在部署体系结构完成后进行核准。
部署设计阶段的输出包括:
部署体系结构。表示组件与网络硬件和软件间映射关系的高级设计文档。
实现规范。用作构建部署蓝图的详细规范。
实现规划。介绍实现企业软件解决方案各个方面的一组计划和规范。实现规划包括迁移规划、安装规划、用户管理规划、测试规划等。
有关部署设计的更多信息,参阅第 5 章,部署设计
在实现阶段,从部署设计阶段创建的规范和规划着手,构建部署体系结构,并实现该解决方案。此阶段包括以下部分或全部任务,具体包含的任务取决于部署项目的性质:
安装和配置硬件基础结构
安装和配置软件
在 LDAP 目录设计中模拟用户和资源
根据用户管理规划从现有目录和数据库中迁移数据
在测试环境中创建和部署试验性和原型部署
设计和运行功能性测试来衡量与系统要求的符合度
设计和运行负载测试来衡量峰值负载下的性能
开发和集成定制企业应用程序
创建生产部署,可能需要分阶段部署到生产中
部署进入生产阶段后,即可进入解决方案生命周期的操作阶段。
有关实现阶段的更多信息,参阅第 6 章,部署设计实现
操作阶段包括确保实现部署顺利运行的必需任务。此阶段包括以下任务:
监视部署以确保系统按规划运行
性能调整以确保部署的软件处于最佳运行水平
提供平稳运行所需的定期维护和根据需要进行的随机维护
根据需要升级软件和硬件
有关操作阶段的更多信息不在本指南讨论范围之内。