學習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、從資料上看到有個伺服器傳輸通道,不知道是做什麼用的?
專案三 乙個專案多個檔案
檔名稱 完成日期 2014年 04月01號 版本號 v1.0 對任務及求解方法的描述部分 輸入描述 無 問題描述 程式輸出 無 問題分析 演算法設計 include include using namespace std ifndef cpoint h included define cpoint ...
C 三 乙個有理數類
class rational rational rational int numerator,int demominator numerator numerator demominator demominator const rational rational operator const rati...
從乙個例項學習 FLASK WTF
本案例通過實現乙個註冊頁面的編寫,來帶你了解flask wtf的運用.主要功能為表單基礎的功能 手機號碼必須為11位數,且通過資料庫查詢不能有已經註冊的了,密碼要求輸入兩遍且必須一樣,且所有內容不能為空的提示等內容.那麼現在就開始把 一.建立表單類.首先運用flask wtf你必須確保你的環境中已經...