BPELB05管理.docx

上传人:b****5 文档编号:30007008 上传时间:2023-08-04 格式:DOCX 页数:13 大小:1.55MB
下载 相关 举报
BPELB05管理.docx_第1页
第1页 / 共13页
BPELB05管理.docx_第2页
第2页 / 共13页
BPELB05管理.docx_第3页
第3页 / 共13页
BPELB05管理.docx_第4页
第4页 / 共13页
BPELB05管理.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

BPELB05管理.docx

《BPELB05管理.docx》由会员分享,可在线阅读,更多相关《BPELB05管理.docx(13页珍藏版)》请在冰豆网上搜索。

BPELB05管理.docx

BPELB05管理

 

BPEL技术文档

管理

2012/04/19

 

 

修改日期

作者

版本

修改记录

2012

朱博

8/29

目录

 

5OracleBPEL管理

5.1可视化监控

5.2审计

5.3In-flight管理

5.4同步异步信息传送

5.5高级异常管理

5.6多版本并存

5.7大型XML支持

5.8高性能、高扩展性

安装OracleBPEL

1.选择安装路径

2.选择安装模式:

开发员

1.略过一个DHCP的警报

2.设置HTTP代理(略过)

3.安装任务总览

4.安装结束

5.自动运行配置向导

到此,OracleBPELProcessManager已经安装成功

1.通过URL:

http:

//localhost:

9700/BPELConsole来登录到OracleBPEL的流程监控管理界面(用户bpeladmin/welcome1,oc4jadmin/welcome1)

 

5.1可视化监控

描述如何处理输入的消息,它不是一个关于业务流程规格化定义的规范。

简单的说,可以将它看作XML形式的编程语言,提供将WSDL-Services组合成控制流的能力。

由于BPLE对于人工活动支持不好,为此进一步扩展为BPEL4People(WS-BPELExtensionforPeople),从只能编排Web服务,扩展为同时支持对Web服务和基于角色的人工活动进行编排。

  

监控流程活动

  以上介绍的前两个步骤(初始化流程并启用工作流)中,流程状态通过IProcessHandle和IInstanceHandleAPI接口以可视化方式进行了更新。

  OracleBPEL控制台提供了一个基于Web的界面,用于部署、管理和调试BPEL流程。

它是一个使用JSP页面和servlet(调用BPEL流程管理器API)设计的管理工具。

因此,您可以轻松地使用API开发您自己的RIA控制台,以提供一个业务级别的流程监控界面。

  该控制台为特定的流程实例提供了可视反馈,甚至还提供了指向与流程中给定步骤关联的审计线索数据的链接。

而RIA控制台的主要优势在于它能够执行实际分析与计划分析。

该控制台显示流程在其执行过程中可能采取的所有可能的步骤;它还显示在执行过程中实际采用的路径。

用户可以单击任何流程节点来检索BPEL有效荷载,并在对话框中显示该有效荷载信息。

  由于提供了以可视化方式描绘的理想与实际流程路径以及在有效荷载级别进行下钻这一功能,最终用户可以自行分析流程并标识故障点,而无需IT人员的参与。

5.2审计

以下以报销流程为例说明工作流模块的使用,报销单据凭证处理都是在财务系统完整的,但是财务系统一般不支持所有员工在财务系统中录入报销单据数据(如发票号码、金额等),同时由于财务软件是产品化的软件,很难进行大的改造。

因此实现每个员工填写报销单据,并由上级领导审批报销单据,最后由财务进行审核,需要一个报销管理。

报销管理单据的维护、审批处理,信息简单,可以直接用表单定制和工作流管理模块定制出来,包括填写报销单据、直接上级审批、领导审批等流程节点,就像一般的办公自动化系统实现的功能。

领导审批完成之后,启动一个业务流程(采用BPEL进行编排),将单据数据自动写入财务系统(只需要财务系统提供写入单据Web服务)。

由于财务系统无法进行大的改造,在财务审批、财务入账环节,采用消息流程节点处理方式,由财务系统提供一个查询单据状态的接口,这样财务人员就可以在待办任务中看到报销单据的待办,财务人员通过单点登录,点击待办任务进入财务系统进行操作,报销单据的填报者则不需要进入财务系统,在报销系统中就可以看到报销单据的整个流程的状态,这样既可以实现整合所有流程,又对财务系统本身不会造成大的影响。

图7.报销流程举例

以上就实现工作流组件在数据库设计以及基于IBM产品体系如何实现做了简要说明,并以报销流程举例说明实现。

(《基于SOA的工作流(WF)整合》)

 

5.3In-flight管理

在WebSphereIntegrationDeveloper中,长时间运行的流程组件被实现为BPEL流程。

通常,长时间运行的流程实现可能运行几小时、几天,甚至几个月。

如果我们需要更改逻辑来支持业务需要,则应该如何做呢?

当我们进行更改时,处于“in-flight”的流程实例会发生什么呢?

WebSphereProcessServer提供了一个简单而且完美的解决方案:

流程管理。

流程版本管理允许您保存现有的流程模版的许多个定义。

ProcessServer使用流程模版来启动流程实例。

现有的实例将依据原始流程模版继续运行,而新的实例将采用新的定义。

在ProcessServer中,版本管理是通过ValidFrom日期的概念进行的。

ProcessServer使用流程模版的哪个已部署版本。

更总要的是,一旦实例被创建,它就会依据该模版进行,而不管后来什么时候部署该流程的其他版本。

为了理解版本管理的概念,来看一下下面的场景。

1.1假设创建并部署了一个名为“process”的流程模版,其ValidFrom日期是Apr01,200619:

22:

39.图22显示IntegrationDeveloper中的BPELEditor

图22.BPELEditor

 

2.接下来,将流程组件部署到ProcessServer。

由于ValidFrom日期4/1/061:

22:

39比当前日期Apr08,2006早,所以使用上面的模板来启动新的Process实例。

图23显示了BusinessProcessExplorer控制台中的MyProcessTemplates页。

 

图23.MyProcessTemplate页

 

3.使用此流程模板启动三个Process实例。

检查BusinessProcessExplorer控制台,您将看到三个活动的实例,如图24所示。

 

图24.流程实例列表

 

4.创建一个新的流程版本,其ValidFrom日期为Apr08,200601:

23:

16。

图25显示IntegrationDeveloper中的BPELEditor。

 

图25.BPELEditor

 

5.将该流程的新版本部署到ProcessServer。

检查BusinessProcessExplorer控制台,您将看到只有该流程模板Process的较新版本可用于启动新的实例。

请注意ValidFrom日期是4/7/069:

23:

16PM。

 

图26.新的流程模板

 

由于日期示例是4/9/262:

45:

29PM,所以所有新的实例都将用新的流程模板来启动,而三个正在运行的实例将继续用与它们启动时相同的模板执行。

5.4同步异步信息传送

为了实现可靠性,可扩展性和适应性,与Web服务的互动都将必须支持同步和异步消息。

在AutoLoan的例子里,应用与信用评级制度通过JMS和SMTP和HTTP的贷款处理器互动。

此外,EJB技术可能被用来界面定制J2EE的贷款服务应用和同步Web服务。

如图4。

一般来说,企业中的一些服务,可能只被定义了同步接口。

其他服务可能作为异步信息存在,或作为异构Web服务协议的一个新的应用存在。

在所有这些情况下,将与其他服务整合的

企业内部或外部的过程或服务,要能宽容地处理可能无法在不可预知的时间使用的服务。

如果要避免一个紧密耦合架构的缺点,需要一个使用异步消息和有效的例外管理的过程。

编排异步消息和Web服务作为应用的构建模块,带来了新的挑战。

尤其是,同步请求-答复编程模型让位于一个基于异步互动松耦合Web服务的会话模型。

在这里,我们将编排逻辑定义为业务逻辑,即序列,协调和管理Web服务会话。

这种编排逻辑可以像一个单一的双向通话那样简单,或像有异常处理及补偿逻辑的非线性、多步商业交易那样复杂。

 

5.5高级异常管理

 faultHandlers、catch及catchAll元素

  活动执行过程中发生异常,业务流程必须对错误进行处理。

与Java等语言类似,BPEL提供了异常处理机制。

用户可以在业务流程中添加faultHandler来捕获并处理相应的异常。

faultHandler与特定的Scope关联,用于捕获Scope内产生的异常。

当异常发生时,BPEL正常执行流结束,控制流转入faultHandler内执行。

  faultHandler类似于try-cache结构,它包含多个catch元素,每个都提供活动为特定类型的错误条件进行异常处理。

故障会通过接收WSDL定义的故障消息来生成,或者它们可以通过使用throw元素被明确触发。

faultHandlers结构可以由catchAll元素构成(或终止)以提供默认的错误处理活动:

   

   ...

   

   

   ...

   

当异常在特定的Scope内产生时,如果被此Scope内定义的FaultHandler捕获,则该Scope状态被置位为Failed,当异常被处理后,外部Scope继续执行。

如果异常无法被此Scope内FaultHandler捕获或无FaultHandler定义,则该Scope状态被置为Failed,并且将异常抛出到外部Scope继续处理,直到异常被处理为止。

这个流程也与Java的异常处理机制非常相像。

5.6多版本并存

它不需要输出、输入或BPEL代码生成-它只是原生地建立和保持了标准的BPEL流程。

OracleBPEL流程器在所有主要的应用服务器上运行,其中包括Oracle应

用服务器系统、WebSphere、WebLogic和JBoss。

生产部署平台Windows、Linux、Solaris操作系统、AIX和惠普/UX。

数据库可以是Oracle、SQLServer、DB2或其他的。

对于所有这些要求,OracleBPEL流程管理实施BPEL标准,并提供基础架构软件,当实施以服务为导向的应用时,开发人员在更高的抽象层次上工作。

BPEL服务器为流程整合提供了可移植性和广阔的开发者网络,许多厂商包括IBM、Microsoft、BEA、SAP和开放源的厂商已经公开支持BPEL标准。

5.7大型XML支持

OracleBPEL是一个兼容全局XMLweb服务体系结构的规范,致力于增加跨越边界的交互式操作,是创建业务的最佳实践。

BPEL与XML模式定义,并被设计为最大限度发挥工具包中其他组件的能力,一个集成引擎增加每个模块化服务的效力,所有暴露API在模块间都是一致的,有效地消除了传统的学习曲线。

5.8高性能、高扩展性

当你需要升级服务器但不停止运行你的应用集成时,会发生什么?

当贷款采购申请成功,需要每天规模处理100000笔交易时,会发生什么?

OracleBPEL流程管理器可以很容易地集群容错/故障切换和处理日益增加的交易量。

一个BPEL流程,在一台服务器发生故障时(包括执行过程中),可以即时在一个服务器上创建,也可自动迁移到另一台服务器,然后完成第三服务器基础上的分配负荷。

附录

*.获得更多技术支持

*.1请拨打联动北方热线电话400-810-2327

*.2或发邮件至我们service@

*.3或访问我们网站

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1