WebSphere Process Server V7中如何实现连续可用性

简介

随着组织开始了解如何最佳地利用流程来帮助运行和改善其业务,业务流程管 理应用程序不断变得越来越任务关键型。这意味着这些应用程序的可用性需求常 常会达到 24/7。BPM 还鼓励持续流程改进,这意味着对应用程序的更改会更快地 以各种不同的形式完成。需要采用一些机制和技术来最大程度地减少宕机时间, 从而实现连续可用性。这些技术需要尽可能自动化,以便提高一致性和速度,并 减少指纹检查或人为错误。

本文提供了在 WebSphere Process Server V7.0 中实现连续可用性的背景知 识、见解和一些实用技术。

首先让我们来回顾一下 WebSphere Process Server 的拓扑结构。本文将重点 详细介绍准备和设置本文所建议方法的应用阶段的特殊考虑因素。因为在 WebSphere Process Server 上运行的 IBM BPM 解决方案中涉及到许多不同类型 的工件,所以需要使用不同的技术来实现想要的结果。还需要在解决方案和应用 程序级别上执行一些限制和特殊设置。每个场景都提供了详细的解释,包括执行 这些场景所涉及的步骤。本文将对所执行的场景和应用的基本技术进行重点描述 ,并以此为基准探索与  store-and-forward 和替代的拓扑结构配置相关的 变化。本文还将枚举对所执行场景和一些影响的更多见解。最后,将会总结如何 对产品修复程序包应用某种类似方法。

在生产环境中尝试这里列出的任何过程之前,强烈建议您先全面测试它们。除 了拓扑结构之外,应用程序必须以有助于实现连续可用性的方式来创建。本文提 供了一些具体的信息,但假设应用程序会适当地处理界面变化、数据库中需要的 表和其他资源需求。换一种说法,要认识到一些应用程序更改可能破坏兼容性, 进而导致宕机。本文关注的重点是兼容的更改。例如,我们会执行添加操作,而 不是删除或更改操作。特定于应用程序的数据库不会发射更改。删除操作和更改 数据库等操作不属于本文的讨论范围。

Process Server 拓扑结构的背景

图 1 给出了一个典型的 WebSphere Process Server 配置的可能形式。为了 简单起见,本文通篇都会假设采用了一种与此类似的单细胞拓扑结构。我们不可 能介绍每一个配置场景,但我们希望提供一些可应用于绝大多数配置的通用实践 。

图 1. 一个包含 IBM HTTP Server 的由两节点和 4 个集群组成的拓扑结构

所有 WebSphere Process Server 拓扑结构都会利用 4 个关键功能:应用程 序部署目标、消息基础架构、支持基础架构和 Web 基础架构。集群 是一组执行 这 4 个功能中的一个或多个功能的服务器。可以让一个集群执行所有 4 个关键 功能。但是,如果将这些功能分散在多个集群上来提高恢复能力,则有机会获得 更高的连续可用性。

在图 1 中所示的拓扑结构中,4 个功能中的每一个功能都有一个专门的集群 。应用程序部署目标集群 (AppTarget) 由安装了您的应用程序的服务器组成。这 些应用程序可能包括业务流程、服务、人工任务和中介。远程消息集群 (Messaging) 为您应用程序的异步消息和内部 Process Server 组件的需求提供 支持。支持基础架构集群 (Support) 提供的功能为部署目标提供补充,作为一个 独立集群,它实现了隔离,并从部署目标解除了一些特定的工作负载。最后,Web 组件集群 (WebApp) 托管了基于 Web 的客户端应用程序,比如 Business Space 、Business Process Choreographer 工具和 REST API 服务。

此拓扑结构包含一个部署管理器和 2 个 Process Server 节点。部署管理器 的职责是管理该单元,提供一个界面来配置该单元中的各种组件。部署管理器还 负责安装和更新应用程序,因此它对我们实现连续可用性至关重要。

一个节点 托管着一个或多个应用服务器;在此拓扑结构中,每个节点托管了 每个集群的一个成员。每个节点由部署管理器通过节点代理 远程管理。部署管理 器与一个节点的节点代理进行通信,该节点代理进而与该节点的应用服务器进行 通信。

在 WebSphere Process Server 中,应用程序通过部署管理器使用 Integrated Solutions Console 或 wsadmin 命令行脚本工具来安装。在安装或 更新一个应用程序时,新应用程序的工件首先被存储在该单元主存储库 中。然后 部署管理器将新应用程序的工件传递到每个节点的节点代理。随后,每个节点代 理更新该节点的应用服务器上的应用程序。

IBM HTTP Server 通常用于处理 IBM BPM 环境中的 HTTP 流量。IBM HTTP Server 支持使用一个名为 plugin-cfg.xml 的文件配置路由到应用服务器的流量 。一个客户端连接到 HTTP 服务器,并依据每个应用服务器配置来处理的负载, 这个 HTTP 服务器将客户端的请求路由到该单元的应用服务器。在讨论更新异步 应用程序时,我们将更详细地介绍 IBM HTTP Server 配置。

在对 WebSphere Process Server 拓扑结构的基本概述中,我们大体介绍了理 解和成功使用后面介绍的过程所需的知识。

连续可用性场景中的拓扑结构角色

在 WebSphere Process Server 中实现连续可用性的关键是最大程度地减少应 用程序更新期间的宕机时间。我们的目标是在更新应用程序时,让客户端不会体 验到任何宕机时间,最好完全注意不到任何变化。对于某些类型的应用程序,这 很简单,无需特殊的准备。但对于大多数 Process Server 应用程序,一次零宕 机时间的更新需要精心规划,还需要采用一个涉及到在各个节点间路由传入应用 程序流量的特殊过程。稍后我们会详细介绍此过程,但我们首先会概述使此目标 变为可能的 Process Server 拓扑结构。

实现连续可用性的一个前提条件是我们实现所谓的 “高可用性” 。要实现连续可用性,建议采用某种与图 1 类似的拓扑结构:由一个 2 节点和 4 个集群组成的拓扑结构,每个节点上拥有每个集群的一个节点。在最低限度下 ,您必须有一个与消息集群分开的应用程序目标集群。这可以确保消息引擎可与 应用程序目标服务器独立地进行故障转移。还必须有至少两个独立的节点,用于 托管应用程序目标和消息集群的成员。这使您能够停止一个节点上的服务器并更 新一个应用程序,同时让另一个节点处理所有应用程序流量。这些建议不仅为实 现连续可用性提供了基础,还为高可用性奠定了牢固的基础。

时间: 2024-12-03 06:35:29

WebSphere Process Server V7中如何实现连续可用性的相关文章

WebSphere Process Server V7中的并发人工任务分配

概述 当一个人工任务分配给一组潜在所有者时,例如,WebSphere Process Server 中的 Everyone 或一个 Group 工作项目,组内的多个成员试图 同时声明一个任务.在之前的 WebSphere Process Server 版本中,消除并发异 常的惟一方法是封装同步块中决定和声明任务的查询(或使用 Java 5 中 的可重入锁).同步方法有一些缺陷,由以下原因引起的: 同步块在工作项目上的员工查询完成之前执行.这就导致了访问任务时所有线 程阻塞,不仅仅是访问任务和工作

在WebSphere Application Server V7中为WS-Addressing提供JAX-WS 2.1支持

IBM WebSphere Application Server V7 包括了对 Java API for XML-Based Web Services (JAX-WS) 2.1 规范的支持.JAX-WS 2.1 是 Java Specification Request (JSR) 224 的维护版本,通过增加新功能对 JAX-WS 2.0 规范提供的功能进行了扩展.其中最重要的新功能就是 在应用程序编程接口(Application Programming Interface,API)中支持 W

WebSphere Application Server V7中的新特性

IBM WebSphere Application Server V7 中包括一些功能强大的新特性和显著的增强功能,以帮助您实现更高的工作效率.更强的安全性.更紧密的集成和简化的管理.了解这个新版本中的关键特性,这些特性使得该版本可以为您的面向服务的体系结构提供灵活而可靠的基础. 引言 IBM WebSphere Application Server 为面向服务的体系结构(Service Oriented Architecture,SOA)应用程序交付敏捷.可靠的基础,以使应用程序与业务和 IT

使用WebSphere Process Server关系服务的EIS数据自动同步

开始之前 WebSphere Adapters 能连接到很多使用 Service Component Architecture (SCA) 编程模型的 Enterprise Information Systems (EIS). 本教程将帮助您使用 WebSphere Adapters 和 WebSphere Process Server 关系服务来创建一个模型,同步化 EIS 中的数据,而无需保存所有 ID. 目标 WebSphere Process Server (下文称为 Process S

利用WebSphere Process Server 7轻松定做属于自己的EJB service

EJB 是 Sun 的服务器端组件模型,最大的用处是部署分布式应用程序.凭借 Java 跨平台的优势,用 EJB 技术部署的分布式系统可以不限于特定的平台.EJB 3.0 规范使 EJB 的开发变得更加容易,也获得了越来越多企业级用户的青睐.在 WebSphere 应用服务器 7.0 中提供了更多对 EJB 3.0 和 EJB 2.1 的支持 , 用户可以很容易的通过 WPS 7 新特性 EJB export binding 将自己的 SCA 服务发布为一个 EJB service 而再不用由程

WebSphere Application Server V7、V8和V8.5中的高级安全性加强 二

高级安全注意事项 简介 第 1 部分 解释了 IBM WebSphere Application Server V7.0 和更高版本在设计时如何考虑到默认安全性安全原则.目标是在最常见的配置和比较简单的环境中,让这个产品在默认情况下具有合理的安全水平(尽管这个目标还没有完美地实现).前一篇文章最后介绍了 WebSphere Application Server 中已经采用的许多重要的基于基础架构的预防性安全措施.本文将介绍基于应用程序的其他预防性措施,然后讨论一些重要的注意事项. 尽管本文中的信

WebSphere Application Server V7、V8 和 V8.5 中的高级安全性加强 一

简介 IBM WebSphere Application Server 的安全性在每个版本中都有所改进.除了在新版本中增加了一些新功能之外,我们还不断增强产品的默认安全性.我们通过改进默认设置不断提高满足默认安全性这一关键原则的程度.本文的前一个版本 主要关注 WebSphere Application Server V6 和那个版本所需的加强步骤.在后续 WebSphere Application Server 版本中,显著减少了加强步骤的数量,更重要的是,保留的大多数步骤变得不那么关键了.那

利用WebSphere Process Server v6.2.0.1 中的JAX-WS绑定传递SOAP消息附件

前言 Web 服务是目前 SOA 实现中的关键技术之一.新版本的 WebSphere Process Server (WPS) v6.2.0.1 在支持原有 JAX-WS 绑定的基础上,增加了对未被引用(unreferenced)SOAP 消息附件的支持,如下图 1 所示. 图 1. SOAP 消息附件转换 WPS 运行时的 JAX-WS Web 服务绑定能够捕获 SOAP 消息附件并将之附加到 SMO(Service Message Object)中的附件部分,该附件可以随着 SMO 在 SC

在WebSphere Process Server中为新的查询要求设置自定义属性

简介 在您开发一个业务流程客户端程序时,您经常需要在一个流程实例内,通过某些业务数据标准来查询流程实例.活动和任务. 例如,您可能想要在流程实例中寻找与某个 ID 的客户相关的所有任务. 当您在 WebSphere Integration Developer(以下简称为 Integration Developer)设计流程时,可以通过为人工任务设置自定义属性来实现这个需求.然而,当流程投入使用后,如果新查询要求需要 新的自定义属性,那么这招就不灵了.您当然可以使用 WebSphere Proce