MQ訊息佇列搭建命令及方法

2022-03-22 07:10:31 字數 1910 閱讀 4606

mq 是一款穩定、安全又可靠的訊息傳遞中介軟體。它使用訊息和佇列來支援應用程式、系統、服務和檔案之間的資訊交換。它可以簡化和加速多個平台中不同應用程式和業務資料的整合。支援各種 api 和語言,並可以在本地、雲和混合雲中部署。

建立訊息佇列方法

1.在linux伺服器192.168.0.151上新建兩個佇列管理器qm1:

mqm@mq:~> crtmqm qm1

2.啟動qm1

mqm@mq:~> strmqm qm1

3.執行mqseries命令

runmqsc qm1

4.建立qm1的通道:msg_chl

define channel ('msg_chl') chltype(svrconn) +

trptype(tcp) +

descr(' ') +

hbint(300) +

maxmsgl(4194304) +

mcauser('mqm') +

rcvdata(' ') +

rcvexit(' ') +

scydata(' ') +

scyexit(' ') +

senddata(' ') +

sendexit(' ') +

sslcauth(required) +

sslciph(' ') +

sslpeer(' ') +

kaint(auto) +

monchl(qmgr) +

compmsg(none) +

comphdr(none) +

sharecnv(10) +

maxinst(999999999) +

maxinstc(999999999) +

replace

5. 建立偵聽器:(埠號:7001)

define listener ('listener_tcp') +

trptype(tcp) +

ipaddr(' ') +

port(9000) +

backlog(0) +

descr(' ') +

control(qmgr) +

replace

6.建立qm2的佇列:msg_que

define qlocal ('msg_que') +

put(enabled) +

defpsist(yes) +

defpresp(sync) +

clwluseq(qmgr) +

scope(qmgr) +

get(enabled) +

propctl(compat) +

defreada(no) +

maxdepth(20000) +

maxmsgl(4194304) +

usage(normal) +

notrigger +

trigtype(first) +

qdpmaxev(enabled) +

qdphiev(disabled) +

qdploev(disabled) +

statq(qmgr) +

monq(qmgr) +

acctq(qmgr) +

defbind(open) +

replace

7.重啟訊息佇列管理器

結束本地佇列管理器 endmqm mq1

啟動本地佇列管理器 strmqm mq1

若偵聽沒啟動,執行 runmqlsr listener_tcp

8.傳送報文測試 執行

mqm@mq:~/sh> amqsput qr qm1

輸入「this is a test!」,雙擊回車結束

9.通過佇列深度或日誌檢視訊息是否成功傳送到佇列上。

mq指令碼可檢視下篇lr之mq協議效能測試指令碼

訊息佇列MQ

目錄 一 簡介 二 為什麼需要訊息佇列 mq 三 介紹 訊息佇列 message queuing 在電腦科學中,是一種程序間通訊或同一程序間不同執行緒的通訊方式。廣義上講訊息佇列是解決分布式系統中,各個功能模組間的資訊傳遞通訊方式。與檔案傳輸和rpc相比,訊息佇列具有更好的平台無關性,並能夠很好地支...

MQ訊息佇列

1.解耦 系統a將userid寫到訊息佇列中,系統c和系統d從訊息佇列中拿資料。這樣有什麼好處?系統a只負責把資料寫到佇列中,誰想要或不想要這個資料 訊息 系統a一點都不關心。即便現在系統d不想要userid這個資料了,系統b又突然想要userid這個資料了,都跟系統a無關,系統a一點 都不用改。系...

MQ訊息佇列應用

很榮幸,原來一直聽說的訊息佇列終於在前段時間用到了自己的專案中。為什麼會用到訊息佇列?毫無疑問,當然是傳輸訊息。這裡訊息一般是一串字串,當然,訊息的含義很多,可以是 hello world 可以是 你吃飯了嗎?可以是一串正式的xml報文。也可以是乙個txt檔案或者xml檔案 在用active mq的...