企业文件、数据和应用程序的事务可跟踪性: 第 1 部分:场景概述:集成 IBM Sterling Connect:Direct 与 WebSphere MQ

本系列文章介绍一个涉及 JK Financials 的场景,JK Financials 是一家需要获得其集成企业的 IT 基础架构的端到端可见性的虚构银行。第 1 部分将向您展示如何结合使用 IBM Sterling Connect:Direct 的托管文件传输功能与 WebSphere Message Broker 业务流程,为多个银行应用程序制定路由决策和执行协议转换。

Devaprasad Nadgir, 高级软件工程师,Emerging Technologies 团队, IBM

Devaprasad Nadgir 的照片Devaprasad (Dev) Nadgir 是位于班加罗尔的 IBM 印度软件实验室的 Emerging Technologies 团队的一名高级软件工程师。他是一位 IBM 认证的和 Open Group Architecture Framework (TOGAF) Master 认证的架构师,在开发、架构和咨询方面拥有丰富的经验。



Abhinav Priyadarshi, 技术项目领导,WebSphere Message Broker Development 团队, IBM

Abhinav Priyadarshi 的照片Abhinav Priyadarshi 是位于班加罗尔的 IBM 印度软件实验室的 WebSphere Message Broker Development 团队的一名技术项目领导。他在 IBM 工作了 11 年。他为 WebSphere Message Broker 开发了新功能和节点,还为印度和亚太地区的各种客户提供有关 WebSphere Message Broker 概念证明 (PoC)、EAI 设计和 WebSphere Message Broker 实现的咨询。



Ms. Sreelatha Sankaranarayanan, 软件工程师,WebSphere Adapters Development 团队, IBM

Sreelatha Sankaranarayanan 的照片Sreelatha Sankaranarayana 是位于班加罗尔的 IBM 印度软件实验室的 WebSphere Adapters Development 团队的一名软件工程师,目前是 WebSphere Adapter for Oracle e-Business Suite 的技术领导。之前她是 WebSphere Partner Gateway 和 WebSphere Data Interchange 支持和开发团队的成员。



2012 年 8 月 26 日

简介

无论大型还是小型的企业,都需要处理各种类型的文件,并将它们与分散在各个企业数据中心的不同的、分散的应用程序相连接。随着底层基础架构变得更加分散和复杂,获取涉及文件、数据转换、连接逻辑、协议转换和发不到不同应用程序的最终数据的事务的端到端可见性成为了一大挑战。

场景和前提条件

本系列文章介绍一个涉及 JK Financials 的场景,JK Financials 是一家需要获得其集成企业的 IT 基础架构的端到端可见性的虚构银行。该可见性将有助于提供事务可跟踪性,还有助于提供解决常规操作中出现的 IT 基础架构问题的方法。

第 1 部分将介绍 JK Financials 处理指令子集的方式的总体架构,这些指令子集是以文件形式从其支行接收的。这一部分将展示如何使用 IBM® Sterling Connect:Direct(以下简称 Sterling C:D)的托管文件传输功能来处理这些文件。可靠地接收到的文件由一个 WebSphere® Message Broker 业务流程处理,以关联一个文件的到达,并为多个银行应用程序制定路由决策和执行协议转换。为了以文件的形式有效跟踪一个指令采取的所有路径,机构的各种组件与 IBM Tivoli® Composite Application Manager for Transactions(以下简称 ITCAM)集成在一起,ITCAM 使用事务 ID 来关联事件,为已完成、放弃、出错或挂起的事务提供不同的视图。

此场景假设以下 IBM 产品已安装并配置,能够在 JK Financials 网络中独立工作。

  • Sterling C:D Nodes V4.5.01
  • Sterling Control Centre V5.3
  • WebSphere MQ V7
  • WebSphere Message Broker V6.1 和 V7
  • ITCAM V7.3

JK Financials 使用 Sterling C:D 在其企业网络中提供托管文件传输 (MFT) 功能。一家支行在文件中使用了一种安全传输协议来发送转账指令,如下所示:

图 1. 场景概述和架构
场景概述和架构

到达企业数据中心的文件保存在文件系统中的一个共享的存储库中。文件到达 Sterling C:D Node A1 时会生成一个 MQ 事件,以触发 WebSphere Message Broker 业务流程来进一步处理该文件。这个触发过程涉及到将 Sterling Control Centre 与 WebSphere MQ 相集成,下一节会对此进行解释。WebSphere Message Broker 业务流程的行为类似于企业服务总线,负责执行以下操作。

  1. 关联来自 Sterling Control Centre 的事件,以启动业务流程。
  2. 确保文件已成功到达共享存储中。
  3. 检查传入的文件内容,基于文件名称和文件到达的时间戳创建一个惟一 ID。
  4. 基于为路由选择的端点,执行协议转换。
  5. 创建新消息或文件,将它们发布到应用程序。

本文会同时介绍 WebSphere Message Broker V6.1 和 V7:

  • 对于 V6.1,使用来自 IBM Sterling Control Center(以下简称 SCC)的事件关联文件到达并启动业务流程。
  • 对于 V7,使用开箱即用的功能来监听 C:D 文件的传输和到达,然后自动启动文件处理。

在此场景中,使用数据的应用程序如下所示:

  • 一个由一条到达应用程序端点的 MQ 消息触发的转账 SAP 工作流。
  • 一个通过 TCP/IP 获取原始字节来处理转账指令的遗留核心银行系统。
  • 一个使用文件来实现组织中所有财务事务的日志合规性的日志和合规性系统。

该场景将一个健壮的文件处理和批处理托管文件传输系统(比如 Sterling C:D)与一个 WebSphere Message Broker 连接系统相结合,后者可处理极高的事务量并处理多种类型的网络和协议。

此场景中使用的文件结构

一个数据文件可包含来自各家 JK Financial 支行的一个或多个事务请求(消息)。该请求会发送到主要支行数据中心。每个事务消息都是 XML 格式的,一个文件可包含多条由换行符分隔的 XML 消息。下面的 MsgFile.txt 示例文件包含 4 个事务,每个事务使用一个惟一 TransactionID 来识别和跟踪事务。它还包含一个 RequestType 元素来提供请求类型,请求类型可能是 DD 请求或 NEFT 转账请求。基于请求类型,这些消息会路由到不同的业务流:

<Customer><TransactionID>2342194</TransactionID><AccountNo>234234</AccountNo>
<Name>Abhi</Name><RequestType>DD</RequestType><BeneficiaryName>John</BeneficiaryName>
<Amount>10000</Amount><Branch>payable at</Branch><Date>31/10/2011</Date></Customer>

<Customer><TransactionID>2342195</TransactionID><AccountNo>121332</AccountNo>
<Name>Vijay</Name><RequestType>NEFT</RequestType><ToAccountNo>122334</ToAccountNo>
<Name>James</Name><IFSCCode>1234</IFSCCode><Branch>Bangalore</Branch>
<Amount>20000</Amount><Date>31/10/2011</Date></Customer>

<Customer><TransactionID>2342196</TransactionID><AccountNo>234234</AccountNo>
<Name>David</Name><RequestType>DD</RequestType><BeneficiaryName>Martin</BeneficiaryName>
<Amount>10000</Amount><Branch>payable at</Branch><Date>31/10/2011</Date></Customer>

<Customer><TransactionID>2342197</TransactionID><AccountNo>121332</AccountNo>
<Name>Mike</Name><RequestType>NEFT</RequestType><ToAccountNo>122334</ToAccountNo>
<Name>James</Name><IFSCCode>1234</IFSCCode><Branch>Bangalore</Branch>
<Amount>20000</Amount><Date>31/10/2011</Date></Customer>

此场景使用 XML 作为数据个值,但任何结构化的文本或二进制数据格式均可使用。

创建惟一 TransactionID 以实现端到端可跟踪性

TransactionID 是事务数据文件名称和时间戳的串联结果。例如,如果文件名为 Msgfile.txt,文件到达 Message Broker 流时的时间戳为 20120205_133117_820340,那么事务的 ID 将为 Msgfile.txt_20120205_133117_820340。ITCAM for Transactions 将显示 4 个事务和每个事务的目标,使您能够跟踪每个事务的详细信息。

配置 Sterling C:D 节点并测试文件到达

本节介绍如何配置 Sterling Control Center (SCC) 来监视一个 Sterling C:D 节点,以及如何将事件从 SCC 发布到 WebSphere MQ。图 2 给出了拓扑结构:

图 2. Sterling C:D 节点、SCC 和 WebSphere MQ 的拓扑结构
Sterling C:D 节点、SCC 和 WebSphere MQ 的拓扑结构

配置 System A

本文在 System A 和 System B 上都使用 Microsoft® Windows®。

  1. 在 System A 上安装 Sterling C:D Windows 作为主要节点。
  2. 在 System B 上安装 Sterling C:D Windows 作为辅助节点。
  3. C:D 有两个功能,即 C:D Server(可接受入站的文件或请求的节点)和 C:D Requester(可发起一个传输出站文件的请求的节点)。在安装期间,确保没有应用程序正在使用端口 1363 和 1364,因为它们是 C:D Windows 使用的默认端口。从 Program Files 菜单中使用 C:D Requester 工具,使用导航插入一个本地节点,如下所示:
    图 3. 添加 C:D 节点
    添加 C:D 节点

配置 Functional Authorities

  1. 在 C:D 节点上,双击 Functional Authorities。这会显示一个本地域用户列表。要创建 C:D 用户,请单击 New User。对于新的或现有的用户,单击 Properties 以使用如下所示的对话框配置它:
    图 4. 配置 Functional Authorities
    配置 Functional Authorities
  2. 保留 Main 选项卡上的默认值。在 Directories 选项卡上,配置文件上传和下载目录。

配置 Netmap

Netmap 配置是 C:D 配置中的一个重要步骤。它是您在 C:D 到 C:D 传输的情况下定义辅助 C:D 节点的地方,或者是您在 C:D 到 Sterling File Gateway 传输的情况下配置 C:D 服务器适配器的地方。此场景涉及 C:D 到 C:D 的传输,所以您需要为辅助 C:D 节点配置 Netmap:

  1. 双击 C:D 节点上的 Netmap from the C:D 打开一个对话框,如下所示:
    图 5. 配置 Netmap
    配置 Netmap
  2. 输入辅助 C:D 节点的名称。
  3. 转到 TCP/IP 选项卡,并提供辅助 C:D 节点的 IP/主机名和端口详细信息。
  4. Communication Paths 选项卡上,将 TCPCommPath 添加到已选路径列表中。对于其他配置设置,接受默认值并单击 OK
  5. 对 C:D 辅助节点执行类似的配置步骤。配置 Netmap 的最后一步在辅助节点上是可选的,仅在您将使用辅助节点发起向主要节点的传输时才需要执行此操作。

您已完成基本的 C:D 配置,现在已准备好开始执行从主要节点 (System A) 到辅助节点 (System B) 的文件传输。

使用 C:D 发送和接收文件

  1. 在主要 C:D 节点上配置的本地节点上,双击 Send/Receive Files。在打开的对话框中(如下所示),选择 Netmap 中配置的辅助节点 (SNode)。
  2. 指定需要发送到 SNode 的文件的路径和目标文件名。您不需要指定目标路径,因为该文件将传送到为 SNode 用户配置的下载目录。
    图 6. 使用 C:D Requester 发送和接收文件
    使用 C:D Requester 发送和接收文件
  3. 完成传输作业后,您可以在 Exec Status 窗口中看到结果,如下所示。右键单击相关记录并选择 View Details 来查看 Process Execution Status:
    图 7. C:D Requester 窗口中的流程统计信息
    C:D Requester 窗口中的流程统计信息

使用 IBM Sterling Control Center 监视 Sterling C:D 节点

  1. 将 SCC 安装在 System B 上并配置它来监视辅助 C:D 节点。
  2. 获取 SCC for Windows 的安装程序,解压它,然后双击 CCInstall.exe 启动安装。SCC 安装需要一个数据库,此场景使用的是 DB2 for Windows V9.7。SCC 创建两个数据库实例:一个暂存数据库和实际的数据库实例。
  3. SCC 安装向导提示您输入信息来安装 SCC。指定 db2jcc.jar。
  4. 如果在任何配置步骤期间安装失败,您可以从安装路径上的 ControlCenter/bin 目录运行 configCC.bat 文件来重试它。这里介绍的安装步骤无法取代 Control Center 安装指南,它们只是获得一种可演示其功能的设置所需的最少信息。
  5. 从桌面图标或 Program Files 菜单启动 SCC 控制台。系统会提示您输入以下信息。HostName 表明 SCC 控制台可从一台未安装 SCC 引擎的机器安装和启动。在此场景中,SCC 引擎和控制台安装在同一台机器上。
  6. 默认的 HTTP 端口号为 58080,您可以依据机器上的端口的可用性来更改它。
  7. 当第一次启动 SCC 控制台时,默认的用户名/密码为 admin/admin。您可以在登录后更改密码:单击 SCC 控制台菜单中的 Change Password
    图 8. 登录 SCC 控制台
    登录 SCC 控制台
  8. 登录后,下一步是添加您希望 SCC 监视的服务器。SCC 监视 Connect:Direct、Connect:Enterprise、Sterling B2B Integrator 或 FTP 等服务器。在 Servers 面板上,右键单击 Control Center 并单击 Add Server
    图 9. 配置 SCC 控制台 1 中的 C:D 服务器
    配置 SCC 控制台 1 中的 C:D 服务器
  9. 将打开一个对话框,如下所示:
    图 10. 配置 SCC 控制台 2 中的 C:D 服务器
    配置 SCC 控制台 2 中的 C:D 服务器
  10. Connection 选项卡中,输入您希望添加到 SCC 中进行监视的 C:D 节点的 IP 和端口号,指定 C:D 用户的用户名/密码。
  11. 要确认您提供的信息是正确的,可确保 C:D 服务器正在运行并单击 Test Connection
    图 11. 配置 SCC 控制台 3 中的 C:D 服务器
    配置 SCC 控制台 3 中的 C:D 服务器
  12. 本文未涉及其他选项卡,仅接收默认值并完成将服务器添加到 SCC。
  13. 因为您已添加了一个 C:D 服务器,所以会在 SCC 控制台中的 Connect:Direct 下列出它,如下所示。服务器节点旁边的图标表明已经可以将服务器用于监视:
    图 12. SCC 控制台显示了已添加的 C:D 服务器
    SCC 控制台显示了已添加的 C:D 服务器
  14. 如果服务器不可供 SCC 进行监视,您会在该图标旁边看到一个红色图标,表明存在一个连接错误,需要更正此错误,然后才可以将要监视的服务器用于 SCC。
  15. 要查看统计信息或已由 C:D 节点执行的流程,可以使用 SCC 控制台完成此操作。右键单击 C:D 服务器节点并单击 Process History
    图 13. 从 SCC 控制台查看流程历史记录
    从 SCC 控制台查看流程历史记录
  16. 显示了一个报告,其中显示了辅助 C:D 节点已执行的一组流程:
    图 14. 在 SCC 控制台中看到的 C:D 节点的 Process History 视图
    在 SCC 控制台中看到的 C:D 节点的 Process History 视图
  17. 要显示在文件传输期间执行的每个节点的详细信息,请单击 Select Statistics
    图 15. SCC Select Statistics 显示了所有统计信息
    SCC Select Statistics 显示了所有统计信息

将 IBM Sterling Control Centre 与 WebSphere MQ 集成

为了拥有 C:D 文件传输与其他 WebSphere 应用程序相结合的统一视图,您需要采用某种方法来发布事件,以便它们可供其他 WebSphere 产品使用。要实现此目标,可配置 SCC V5.3 来将事件发布到 WebSphere MQ 中的某个主题,并按如下所示配置 WebSphere MQ:

  1. 安装 WebSphere MQ V7。
  2. 创建一个队列管理器。
  3. 创建一个包含主题字符串(比如 scc)的主题。
  4. 创建一个服务器连接通道。
  5. 配置监听器来监听一个给定端口。
  6. 创建一个名称类似 SCCQueue 的本地队列。
  7. 为主题创建一个订阅队列。发布到此主题的事件将放在此队列中。

任何需要使用这些 SCC 事件的应用程序均可配置为从 SCCQueue 读取。

  1. 为了使 SCC 能发出事件,请从安装的位置运行 configCC.bat 文件来配置 SCC。
  2. 在执行这个批处理文件期间,系统会提示您更改 SCC 的各种安装参数,但只需更改 SCC 的 JMS 配置即可。图 15 显示了提示您更改的参数和您需要指定的值:
    图 16. 使 SCC 能够发出 JMS 事件
    使 SCC 能够发出 JMS 事件
  3. 配置更改完成后,重新启动 SCC。
  4. 如果您的对 SCC 的 JMS 配置更改正确完成,并且如果按上面解释的那样配置 WebSphere MQ,您会看到,当 SCC 监视的 C:D 辅助节点收到一个文件时,相关的事件会发布到已在 WebSphere MQ 中配置的主题中,如图 17 所示:
    图 17. SCCQueue 中 SCC 事件列表
    SCCQueue 中 SCC 事件列表

结束语

第 1 部分介绍了提供针对 JK Financial 银行场景的托管文件传输、代理和端到端监视的总体集成解决方案。本文展示了 Sterling C:D 与 WebSphere Message Broker 的集成如何在企业中提供跨平台和跨协议的连接性,为您提供端到端可见性和事务可跟踪性。本文还展示了如何使用 Sterling C:D 设置托管文件传输解决方案。第 2 部分将展示如何使用 WebSphere Message Broker,通过集成 C:D 与 Message Broker 来开发、编排和执行所收到文件的消息流。

参考资料

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

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

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

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

选择您的昵称



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

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

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

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

 


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


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=WebSphere
ArticleID=831895
ArticleTitle=企业文件、数据和应用程序的事务可跟踪性: 第 1 部分:场景概述:集成 IBM Sterling Connect:Direct 与 WebSphere MQ
publish-date=08262012