跳转到主要内容

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

当您初次登录到 developerWorks 时,将会为您创建一份概要信息。您在 developerWorks 概要信息中选择公开的信息将公开显示给其他人,但您可以随时修改这些信息的显示状态。您的姓名(除非选择隐藏)和昵称将和您在 developerWorks 发布的内容一同显示。

所有提交的信息确保安全。

  • 关闭 [x]

当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

所有提交的信息确保安全。

  • 关闭 [x]

使用 Rational Application Developer V8 开发 Modern Batch 应用

如何使用 Rational Application Developer V8 的 Compute Grid Tool for Modern Batch 来开发 Modern Batch 应用

李明慧, 软件工程师, IBM
李明慧,2007 年加入 IBM。先是在 IBM 中国软件开发中心 Data Studio 团队工作从事 InfoSphere Warehouse Administration Console 的功能测试工作,后转到 WebSphere 应用服务器系统测试组工作。developerWorks Professional Writer,曾在 developerWorks 发表多篇文章。

简介:  Rational Application Developer V8(RAD V8)集成了 Compute Grid Tool for Modern Batch,这个工具可用于开发 Modern Batch 应用。本文将向您介绍如何使用该工具来开发 Modern Batch 应用的整个过程。

发布日期:  2012 年 2 月 09 日
级别: 中级

访问情况 : 1023 次浏览
评论: 

开始之前

下载 IBM® Rational® Application Developer 试用版  |  在线试用 IBM® Rational® Application Developer
下载更多的 IBM 软件试用版,并加入 IBM 软件下载与技术交流群组,参与在线交流。

计算机出现之后,处理能力和程序复杂度就在进行着不断的竞争。有些程序是执行一系列的顺序操作,而有些程序可能是处理很多的数据,而其它的一些程序可能是执行一些消耗 CPU 资源的任务。无论是哪种情形,这些程序都有一个共同的特点,就是它们需要执行很长时间并且不需要用户输入,它们统称为批处理操作。

批处理操作最起初是只在主机上,因为批处理所需要处理能力在仅存在于主机上。随着 Java 编程语言和 Rational Application Developer 引入了 Modern Batch(也叫 Java Batch),Browser/server 这种计算模型也能够利用批处理所带来的好处了。

IBM 在 Rational Application Developer(以下简称为 RAD)中引入了在主机上的批处理的丰富经验。现在使用 RAD,您可以设计、开发 Modern Batch 应用程序,并布署到 WebSphere Application Server(以下简称 WAS)上去。您可以使用安装了 Modern Batch 功能部件包的 WAS V7,也可以使用最新版本的 WAS V8,它其中已经包含了 Modern Batch 功能部件包的功能。

Modern Batch 基本概念简介

在开始介绍如何使用 Rational Application Developer 来开发 Modern Batch 应用程序之前,您需要先了解批处理作业的概念以及用于开发批处理应用程序的编程模型。在介绍完这两部分内容之后,就将为您介绍如何使用 RAD V8 来开发 Modern Batch 应用程序。

批处理作业(Batch Job)

从较高层次上来说,批处理作业就是一个说明性的构造结构,它指导着一系列一个或多个应用程序的执行,并为它们指定数据的输入和输出。批处理作业顺序地完成这一系列的任务以便完成某一特定的业务功能。批处理应用程序就是被设计用来在后台以非交互的方式执行的程序。应用程序通常以逻辑结构的方式来访问输入输出数据,然后再通过批处理作业的定义将这些逻辑结构映射到具体的数据资源上。

批处理作业通常要处理大量记录式的输入输出数据,通常这些数据都是一些重要的业务数据,例如,客户账号、销售数据等等。批处理作业所执行的业务数据任务的范围是很广泛的,包括发票生成、账户优化、投机分析等等。批处理作业在 Z 系列主机上已经使用很多年了,即使在现在,它仍然是大型和中型企业的业务骨干。


图 1. 批处理作业示意
图 1. 批处理作业示意

作业定义 xJCL(Job Defination)

作业定义描述了批处理作业步的执行以及它们将要执行的顺序。每个作业步 (Job Step) 都定义通过某一个批处理应用程序来启动该作业步,并指为其指定数据的输入和输出。常用的数据源和数据输出包括文件、数据库、事务交易系统、消息队列等。作业定义是通过叫做 XML Job Control Language(xJCL) 这种 XML 格示的文件来表述的。该文件格以专有的语法格式来表述批处理作业所需要的信息。

批处理编程模型

Modern Batch Application 其实就是一套 POJO,运行于 WebSphere Application Server 的 Batch Container 中,下图描述了应用程序模块以及它们与 Batch Container 的关系。


图 2. 批处理编程模型示例
图 2. 批处理编程模型示例

Batch Container 在 Asynchronous Bean 的控制下来执行批处理作业。您可以将 Asynchronous Bean 看成是一个容器管理的线程。Batch Container 解析作业定义(Job Defination),通过使用 Asynchronous Bean 作为执行单元来完成批处理应用的生命周期。

WAS V7 Modern Batch 功能部件包或者 WAS V8 提供了两种类型的批处理编程模型:计算密集型编程模型和事务密集型编程模型,这两种编程模型都是实现为 Java 对象,它们都被打包到 EAR 文件中再部署到应用服务器环境中。

更多关于 Modern Batch 的介绍,请您参阅参考资料

Compute Grid Tool for Modern Batch 简介

Compute Grid Tool for Modern Batch 现在是 RAD V8 安装程序的一部分。仅需在 Installation Manager 安装过程中,选择该特性即可,如下图所示


图 3. Modern Batch 所需的安装特性
图 3. Modern Batch 所需的安装特性

上图中选择了 WAS V7 Modern Batch 功能部件包特性,这个功能部件包会安装向导、工程、示例以及用于开发 Modern Batch 应用程序的运行时环境。您也可单独安装带有 Modern Batch 功能部件包的 WAS V7 或 WAS V8。


配置 WebSphere Application Server 使其能够运行 Modern Batch 应用程序

在开发 Modern Batch 应用程序之前,我们需要先配置 WAS,使其够运行 Modern Batch 应用程序。我们有三个版本的应用服务器可用于运行 Modern Batch 应用程序,分别是:

  • WebSphere Application Server V8.0
  • WebSphere Application Server V8.0 with WebSphere Extended Deployment Compute Grid V8.0
  • WebSphere Application Server V7.0 with Feature Pack for Modern Batch

您可以选择上述任一版本的 WAS 并对其概要文件进行配置来运行您的 Modern Batch 应用程序。

这里面,只向您介绍如何配置安装好 Feature Pack for Modern Batch 的 WAS V8.0 和 WAS V7.0。如果您想了解如何配置 WAS V8.0 with WebSphere Extended Deployment Compute Grid V8.0,可以查看参考资料


配置 WAS V8.0 来运行 Modern Batch 应用程序

要在 WAS V8.0 上运行 Modern Batch 应用程序,您首先需要创建一个新的概要文件或者使用已有的概要文件,然后在其上运行 uteconfig 脚本。uteconfig 脚本由 WAS 提供,它需要运行大概几分钟来自动的配置概要文件以使其通够运行 Modern Batch 应用程序。这个脚本能够配置作业调度,将用户和用户组映射到相应的安全角色上。

限制:uteconfig 脚本仅支持 WAS V8.0 的概要文件。

注意:如果您不能够打开 Modern Batch 作业管理控制台的话,就说明应用服务器不能够运行 Modern Batch 应用程序。例如,如果在 RAD 的 "Server" 视图中,右键点击 WAS V8.0 应用服务器,然后选择 Modern Batch Job Management Console,您可能看到如下的错误消息:

The webpage cannot be found.

在这种情况下,您需要在概要文件上运行 uteconfig 脚本来消除该错误消息。

uteconfig 脚本可以通过以下两种方式来运行:

  • 在 Workbench 中看到下图的窗口时,点击“OK”

图 4. Configuring the Server for Batch Jobs 窗口
图 4. Configuring the Server for Batch Jobs 窗口

当您试图在一个不能运行 Java Bach 应用程序的 WAS V8.0 概要文件上运行批处理作来时,这个 Configuring the Server for Batch Jobs 窗口就会弹出。当您点击“OK”后,uteconfig 脚本就会在后台运行。在“Progress”视图中,会显示如下的消息:

Configuring the server to accept batch jobs on <serverName>

<serverName> 用于标识“Server”视图中的一个应用服务器条目。例如:WebSphere Application Server v8.0 at localhost

在 WAS 的安装目录下来运行 uteconfig 脚本,下面是一个命令举例:

<WAS_install_dir>\bin>uteconfig <profileName>

其中 <WAS_install_dir> 是 WAS 的安装目录,<profileName> 是您想运行该脚本的概要文件的名字。例如:

C:\Program Files\IBM\WebSphere\AppServer\bin>uteconfig AppSrv01

当脚本成功运行结束之后,会显示如下消息:

UTE configured successfully

想要该脚本所做的变化在 RAD V8 中生效,您需要在 Workbench 中选择“Server”视图中,右键选择应用服务器,然后选择 Restart

如果您不想使用 uteconfig,想要以手工的方式通过 WAS 管理控制台来配置的话,可以查看参考资料中的 WAS V8.0 信息中心。


配置 WAS V7.0 来运行 Modern Batch 应用程序

如果您想要使用 WAS V7.0 Feature Pack for Modern Batch 提供的批处理功能,您必须要创建一个新的带有 Feature Pack 的概要文件或者增大一个原有的概要文件。关于如何安装 WAS V7.0 Feature Pack for Modern Batch,请您查看参考资料

应用服务器包含两种 Feature Pack for Modern Batch 概要文件的模板:

  • default.ute: 该模板已包括了作为开发环境所需要相关配置
  • default: 如果您想要使用该模板创建的概要文件作为开发环境,那么需要做一些相应的配置。配置细节可查阅参考资料中的 WAS V7.0 的信息中心。

当您在试图在 RAD V8 中打开 Modern Batch Job Management Console 时,如果遇到下面的错误信息:

404 error: JSPG0036E: Failed to find resource /jmc/console.jsp

您可以通过使用一个已经增大含有 Feature Pack for Modern Batch 的概要文件来消除上述错误信息。

当您完成了以下任一种操作,您就已经将 default.ute 概要文件模板应用到概要文件上了:

  • 创建一个带有 Feature Pack 的概要文件。通过 IBM Installation Manager 安装 WebSphere Application Server V7.0 Test Environment with Feature Pack for Modern Batch。
  • 创建一个新的概要文件,并且该 WAS V7 安装了 Modern Batch 功能部件包。当没有概要文件关联到服务器运行时环境时,通过使用自动弹出的 Configuring the WebSphere Application Server 向导来创建并配置概要文件。
  • 使用 WAS 提供的 manageprofiles 命令行工具增大已有的概要文件。下面的命令语句中使用–templatePath 参数来指定 default.ute 概要文件模板的位置。

注意:在运行该命令之前请将应用服务器停止

manageprofiles -augment -profileName <profileName> -templatePath "<WAS_install_dir>\profileTemplates\BATCH\default.ute"

<profileName> 是想增大的已有概要文件的名字,<WAS_install_dir> 是 WAS 的安装目录。

在完成了配置 WAS 之后,我们就来看一下,如何用 RAD V8 来开发 Modern Batch 应用程序。

1 页,共 8 | 后一页

评论



static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Rational
ArticleID=792611
TutorialTitle=使用 Rational Application Developer V8 开发 Modern Batch 应用
publish-date=02092012
author1-email=limhui@cn.ibm.com
author1-email-cc=

标签

Help
使用 搜索 文本框在 My developerWorks 中查找包含该标签的所有内容。

使用 滑动条 调节标签的数量。

热门标签 显示了特定专区最受欢迎的标签(例如 Java technology,Linux,WebSphere)。

我的标签 显示了特定专区您标记的标签(例如 Java technology,Linux,WebSphere)。

使用搜索文本框在 My developerWorks 中查找包含该标签的所有内容。热门标签 显示了特定专区最受欢迎的标签(例如 Java technology,Linux,WebSphere)。我的标签 显示了特定专区您标记的标签(例如 Java technology,Linux,WebSphere)。