posts - 14,  comments - 22,  trackbacks - 0

          學習MQ(三) 一個實例。
          現在有兩臺機器A和B,分別安裝了MQ6.0,我要通過MQ進行A和B之間的雙向通信。
          我打算分兩步,第一步:實現A到B的數據傳輸。
          在A上:
          1、創建隊列管理器 QM_1001。
          2、創建本地隊列 LQ_1001
          3、創建傳輸隊列 XQ_1001
          4、創建遠程隊列 RQ_1002
          5、創建發送方通道 1001.1002
          在B上:
          1、創建隊列管理器 QM_1002
          2、創建本地隊列 LQ_1002
          3、創建接收方通道 1001.1002,名字必須與發送方通道相同。
          4、創建偵聽器,監聽1414端口
          這樣,A到B的數據傳輸就可以了。
          啟動隊列管理器QM_1001和QM_1002,啟動B上的偵聽器,A上啟動發送方通道1001.1002,B上的接收方通道也會自動運行;
          第二步:實現B到A的數據傳輸
          在B上:
          1、創建傳輸隊列 XQ_1002
          2、創建遠程隊列 RQ_1001
          3、創建發送方通道 1002.1001
          在A上:
          1、創建接收方通道1002.1001
          2、創建偵聽器,偵聽1414端口
          啟動A上的偵聽器,啟動B上的發送方通道1002.1001,這樣A上的接收方通道會自動運行。
          這樣,由B到A的數據傳輸也能進行了。
          這是我搞定的第一個例子,也是我學習MQ以來感覺有進步的一次。
          下面是腳本。
          在A上:
          * 定義隊列管理器
          crtmqm -t 5000 -h 1000 -lc -lf 10240 -lp 30 -ls 32 -q QM_1001
          *更改QM的字符集編碼(CCSID)
              ALTER QMGR FORCE CCSID(1381)

          * 定義本地隊列
              DEFINE QLOCAL('LQ_1001') REPLACE +
                     USAGE(normal) +
              DEFPSIST(YES)

          * 定義傳輸隊列
              DEFINE QLOCAL('XQ_1001') REPLACE +
                     USAGE(XMITQ) +
              DEFPSIST(YES) +
              TRIGGER +
              TRIGTYPE(FIRST) +
              INITQ('SYSTEM.CHANNEL.INITQ') +
              PROCESS('') +
              TRIGDATA('1001.1002')

          * 定義遠程隊列
              DEFINE QREMOTE('RQ_1002') +
              DEFPSIST(YES) +
              RNAME('LQ_1002') +
              RQMNAME('QM_1002') +
              XMITQ('XQ_1001')

          * 定義發送方通道
              DEFINE CHANNEL('1001.1002') +
              CHLTYPE(SDR) +
              TRPTYPE(TCP) +
              CONNAME('192.168.110.35(1414)') +
              XMITQ('XQ_1001') +
              DISCINT(0) +
              SHORTTMR(30) +
              SHORTRTY(999999999) +
              LONGTMR(1200) +
                     LONGRTY(999999999)

          * 定義接收方通道
              DEFINE CHANNEL('1002.1001') +
              CHLTYPE(RCVR) +
              TRPTYPE(TCP)
          * 啟動隊列管理器
          strmqm QM_1001
          * 啟動偵聽器
          runmqlsr -m QM_1001 -t TCP -p 1414 &

          在B上:
          * 定義隊列管理器
          crtmqm -t 5000 -h 1000 -lc -lf 10240 -lp 30 -ls 32 -q QM_1002
          *更改QM的字符集編碼(CCSID)
              ALTER QMGR FORCE CCSID(1381)

          * 定義本地隊列
              DEFINE QLOCAL('LQ_1002') REPLACE +
                     USAGE(normal) +
              DEFPSIST(YES)

          * 定義傳輸隊列
              DEFINE QLOCAL('XQ_1002') REPLACE +
                     USAGE(XMITQ) +
              DEFPSIST(YES) +
              TRIGGER +
              TRIGTYPE(FIRST) +
              INITQ('SYSTEM.CHANNEL.INITQ') +
              PROCESS('') +
              TRIGDATA('1002.1001')

          * 定義遠程隊列
              DEFINE QREMOTE('RQ_1001') +
              DEFPSIST(YES) +
              RNAME('LQ_1001') +
              RQMNAME('QM_1001') +
              XMITQ('XQ_1002')

          * 定義發送方通道
              DEFINE CHANNEL('1002.1001') +
              CHLTYPE(SDR) +
              TRPTYPE(TCP) +
              CONNAME('192.168.110.21(1414)') +
              XMITQ('XQ_1002') +
              DISCINT(0) +
              SHORTTMR(30) +
              SHORTRTY(999999999) +
              LONGTMR(1200) +
                     LONGRTY(999999999)

          * 定義接收方通道
              DEFINE CHANNEL('1001.1002') +
              CHLTYPE(RCVR) +
              TRPTYPE(TCP)
          * 啟動隊列管理器
          strmqm QM_1002
          * 啟動偵聽器
          runmqlsr -m QM_1002 -t TCP -p 1414 &

          剩下幾個疑問沒有明白
          1、更改QM的字符集編碼是做什么用的?
          2、從資料上看到有個服務器傳輸通道,不知道是做什么用的?

          posted on 2008-11-12 17:37 張老三 閱讀(3873) 評論(3)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 临沭县| 攀枝花市| 布尔津县| 岑溪市| 临湘市| 榆树市| 思南县| 伊通| 商丘市| 工布江达县| 化德县| 安丘市| 开平市| 桃江县| 白银市| 彭水| 三河市| 新田县| 湖口县| 托克托县| 正镶白旗| 晋城| 澎湖县| 蓝田县| 德安县| 肇州县| 天全县| 长沙市| 江华| 聊城市| 双鸭山市| 通渭县| 长泰县| 青龙| 扎鲁特旗| 建昌县| 海伦市| 海南省| 江孜县| 清涧县| 读书|