配置IBM WEBSPHERE MQ觸發器測試
2007-11-15 建立spa
通常設置MQ觸發器的目的有兩種, 一是自動啓動發送端通道, 二是監視隊列消息, 一旦發現新的消息, 則利用觸發器啓動相應的處理進程
若是是利用觸發器自動啓動發送端通道, 使用方法1, 若是是利用觸發器啓動用戶進程, 使用方法2orm
方法1
A 在傳輸通道上設置觸發器, 打開觸發器控制, 類型爲"第一個"隊列
B 初始隊列爲SYSTEM.CHANNEL.INITQ, 該隊列爲MQ專用的通道啓動隊列, 不須要手工啓動其觸發監視器進程
C 觸發器數據爲發送端通道名稱, 例如 QAG.50qt
D 在發送端通道不活動的狀況下, 在傳輸通道放入消息測試it
方法2
A 建立一個觸發啓動隊列, 其模板爲SYSTEM.DEFAULT.INITIATION.QUEUE
runmqsc
define qlocal (MQ.TRIGER.INIQUEUE) like (SYSTEM.DEFAULT.INITIATION.QUEUE)模板
B 定義進程 所謂進程就是觸發器要觸發的程序。本例中進程名稱:TRIGER.PROGRAM 應用程序標識爲:"Notepad.exe"配置
C 在隊列上設置觸發器, 通常爲本地隊列, 打開觸發器控制, 類型根據本身的須要選擇"第一個", "每一個" 仍是 "根據消息數量"程序
D 初始隊列選擇A中建立的觸發啓動隊列, 例如MQ.TRIGER.INIQUEUE, 進程名稱設置爲B中定義的進程名稱, 例如TRIGER.PROGRAM
E 啓動觸發監視器 runmqtrm -m QAGWY -q MQ.TRIGER.INIQUEUE
F 在本地隊列放入消息進行測試
方法2也能夠完成方法1的工做, 只須要將進程定義中的應用程序標識改成 runmqchl -m QAGWY -c QAG.50 就能夠了, 但MQ中提供了專用的通道啓動隊列,
而該隊列不須要手工啓動觸發監視器, 所以方法1比方法2的步驟要少, 配置也簡單, 因此在利用觸發器自動啓動發送端通道的狀況下, 仍是方法1更好.
以上測試在IBM WEBSPHERE MQ9.0.2測試經過.