任务:消息: 使用一个 Windows 服务来启动 WebSphere MQ File Transfer Edition 客户端代理
2010-10-09 08:13:10 来源:WEB开发网核心组件是 SupportPac MA7K,它依赖 WebSphere MQ Client。WebSphere MQ Client 作为 SupportPac MQC7 可用。MA7K 服务连接到一个队列管理器并监听所谓的发起队列(initiation queue)。队列管理器被配置为在这个队列上放置一条消息,以响应在 WebSphere MQ File Transfer Edition 代理的命令队列(command queue)中到达的一条消息。收到触发消息时,触发监控器解析将执行的命令以及任何参数的消息。这些内容被组装到一个正在运行的命令行中,然后控制在其发起队列上恢复监控的触发监控器的返回结果。
Perl 代码是必要的,因为触发监控器假设将要被启动的程序已被编写来将进行触发,并将整个 TMC2 触发消息作为一个参数传递。当然,fteStartAgent 程序是为人类、而不是触发监控器编写的,没有一个 TMC2 结构看起来怎样的概念。因此,如果直接由触发监控器启动,它将不能运行。一个小型 Perl 程序充当 fteStartAgent 和触发监控器之间的一个 “垫片”,使用 TMC2 参数并将其转换为 fteStartAgent 本机参数值。Perl 因其字符串处理功能而被选中,且它被安装在所有版本的 Windows 服务器上,且随时可用。它也可以被编译为一个本机 Windows 可执行文件,这种文件无需安装 Perl 即可运行。
最后的步骤是配置队列管理器以进行触发。这包括定义一个进程对象和在代理命令队列上启用触发。进程定义包括将用于启动代理的完全限定命令,以及将被启动的代理的名称。
当我们在这个项目上安装第一个代理触发监控器后,我们发现了其他一些好处。单个触发监控器能够处理同一个 Windows 服务器上的任意数量的代理。使用触发监控器还意味着 WebSphere MQ 管理员可以从队列管理器启动或停止远程客户端代理,而无需登录运行代理的 Windows 服务器。我的客户遇到的一个问题是 WebSphere MQ 管理员不能直接访问 Windows 服务器,在这种情况下,远程启动和停止代理的能力尤其有用。
更多精彩
赞助商链接