WebSphere MQ傳輸環(huán)境搭建和測(cè)試_第1頁(yè)
WebSphere MQ傳輸環(huán)境搭建和測(cè)試_第2頁(yè)
WebSphere MQ傳輸環(huán)境搭建和測(cè)試_第3頁(yè)
WebSphere MQ傳輸環(huán)境搭建和測(cè)試_第4頁(yè)
WebSphere MQ傳輸環(huán)境搭建和測(cè)試_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、WebSphere MQ傳輸環(huán)境搭建和測(cè)試IBM公司的WebSphere MQ產(chǎn)品可以方便地實(shí)現(xiàn)分布式異構(gòu)系統(tǒng)之間的消息傳遞。對(duì)于大型的分布式系統(tǒng),使用MQ進(jìn)行數(shù)據(jù)通信可以說(shuō)是非常有效的,而且適用于異構(gòu)環(huán)境(如NT和多種UNIX之間通信)。本文主要介紹:MQ核心組件簡(jiǎn)介、MQ環(huán)境的搭建以及通過(guò)編寫(xiě)簡(jiǎn)單的程序?qū)Q進(jìn)行測(cè)試,希望能起到拋磚引玉的作用。一、MQ核心組件簡(jiǎn)介MQ的核心組件包括:隊(duì)列管理器(QueueManager)、隊(duì)列(Queue)、通道(Channel)、消息(Message)和集群(Cluster)。隊(duì)列管理器(QueueManager)提供隊(duì)列服務(wù),管理屬于該隊(duì)列管理器的隊(duì)列

2、和通道等所有MQ對(duì)象。隊(duì)列(Queue)是用于存儲(chǔ)消息(Message)的數(shù)據(jù)結(jié)構(gòu),有四種類(lèi)型:本地隊(duì)列(LocalQueue)、遠(yuǎn)程隊(duì)列(RemoteQueue)、別名隊(duì)列(AliasQueue)和模型隊(duì)列(ModelQueue),最常用到的是本地隊(duì)列和遠(yuǎn)程隊(duì)列。通道(Channel)是提供了從一個(gè)隊(duì)列管理器到其他隊(duì)列管理器的數(shù)據(jù)傳輸路徑。通道類(lèi)型有若干種,其中常用的是發(fā)送方通道(SenderChannel)和接收方通道(ReceiverChannel)。消息(Message)是應(yīng)用程序之間傳遞的一系列字節(jié)數(shù)據(jù),MQ傳遞的消息有兩部分組成:消息描述符(MessageDescriptor)和應(yīng)

3、用數(shù)據(jù)(ApplicationData)。默認(rèn)最大傳遞的消息大小是4MB,可以根據(jù)需要進(jìn)行設(shè)置,最大可到100MB。集群(Cluster)是分布式網(wǎng)絡(luò)上的多個(gè)隊(duì)列管理器的集合,本文不涉及集群的具體內(nèi)容,有興趣的讀者可參考相關(guān)資料。二、MQ環(huán)境的搭建本文搭建的環(huán)境以Windows平臺(tái)為例,搭建步驟如下:(一)、準(zhǔn)備工作準(zhǔn)備2臺(tái)Win2000環(huán)境(XP也可),通過(guò)以太網(wǎng)連通。機(jī)器A:IP地址為:10.1.1.1機(jī)器B:IP地址為:10.1.1.2均安裝MQ 5.3,如需進(jìn)行第三部分的程序測(cè)試,需要安裝JDK并設(shè)置相應(yīng)的類(lèi)路徑。(二)、創(chuàng)建MQ對(duì)象A機(jī)器上:1、打開(kāi)“WebSphere MQ資源管理

4、器”,新建隊(duì)列管理器,名稱(chēng)為QM_AAA,其余采用默認(rèn)設(shè)置;2、在QM_AAA隊(duì)列管理器中創(chuàng)建本地隊(duì)列,名稱(chēng)為L(zhǎng)Q_AAA;3、創(chuàng)建傳輸隊(duì)列,名稱(chēng)為XQ_BBB(新建時(shí)選擇“本地隊(duì)列”,將“用法”設(shè)置為“傳輸”);4、創(chuàng)建遠(yuǎn)程隊(duì)列定義,名稱(chēng)為RQ_BBB,指定遠(yuǎn)程隊(duì)列名稱(chēng)為L(zhǎng)Q_BBB,遠(yuǎn)程隊(duì)列管理器名稱(chēng)為QM_BBB,傳輸隊(duì)列名稱(chēng)為XQ_BBB;5、創(chuàng)建發(fā)送方通道,名稱(chēng)為AAA.BBB,傳輸協(xié)議為T(mén)CP/IP,連接名稱(chēng)為10.1.1.2(1414,傳輸隊(duì)列為XQ_BBB;6、創(chuàng)建接受方通道,名稱(chēng)為BBB.AAA,采用默認(rèn)設(shè)置;7、創(chuàng)建服務(wù)器連接通道,名稱(chēng)為DC.SVRCONN,采用默認(rèn)設(shè)置(

5、該通道主要給后面的測(cè)試程序使用)。B機(jī)器和A機(jī)器上的操作一樣,只是命名不同,如下:1、打開(kāi)“WebSphere MQ資源管理器”,新建隊(duì)列管理器,名稱(chēng)為QM_BBB,其余采用默認(rèn)設(shè)置;2、在QM_BBB隊(duì)列管理器中創(chuàng)建本地隊(duì)列,名稱(chēng)為L(zhǎng)Q_BBB;3、創(chuàng)建傳輸隊(duì)列,名稱(chēng)為XQ_AAA(新建時(shí)選擇“本地隊(duì)列”,將“用法”設(shè)置為“傳輸”);4、創(chuàng)建遠(yuǎn)程隊(duì)列定義,名稱(chēng)為RQ_AAA,指定遠(yuǎn)程隊(duì)列名稱(chēng)為L(zhǎng)Q_AAA,遠(yuǎn)程隊(duì)列管理器名稱(chēng)為QM_AAA,傳輸隊(duì)列名稱(chēng)為XQ_AAA;5、創(chuàng)建發(fā)送方通道,名稱(chēng)為BBB.AAA,傳輸協(xié)議為T(mén)CP/IP,連接名稱(chēng)為10.1.1.1(1414,傳輸隊(duì)列為XQ_AAA

6、;6、創(chuàng)建接受方通道,名稱(chēng)為AAA.BBB,采用默認(rèn)設(shè)置;7、創(chuàng)建服務(wù)器連接通道,名稱(chēng)為DC.SVRCONN,采用默認(rèn)設(shè)置。在A、B機(jī)器上分別啟動(dòng)其發(fā)送方通道,如配置正確通道狀態(tài)應(yīng)為“正在運(yùn)行”。三、測(cè)試程序編寫(xiě)測(cè)試程序采用JAVA語(yǔ)言編寫(xiě),需要讀者具備相關(guān)的JAVA編程知識(shí)以更好地理解本測(cè)試程序。程序文件名為MQSample.java,具體內(nèi)容如下,在機(jī)器A上運(yùn)行(如在B上運(yùn)行請(qǐng)自行適當(dāng)修改)。-import java.io.IOException;import java.util.Hashtable;import com.ibm.mq.MQException;import com.ibm.

7、mq.MQMessage;import com.ibm.mq.MQPutMessageOptions;import com.ibm.mq.MQQueue;import com.ibm.mq.MQQueueManager;public class MQSample/定義隊(duì)列管理器和隊(duì)列的名稱(chēng) private static String qmName = "QM_AAA" private static String qName = "RQ_BBB" private static MQQueueManager qMgr; private static

8、 Hashtable properties = new Hashtable(;public static void main(String args try properties.put("hostname", "10.1.1.1"properties.put("port", new Integer(1414;properties.put("channel", "DC.SVRCONN"properties.put("CCSID", new Integer(1381;prope

9、rties.put("transport","MQSeries"   / Create a connection to the queue manager qMgr = new MQQueueManager(qmName,properties; / Set up the options on the queue we wish to open. int openOptions = 16;/ Now specify the queue that we wish to open, / and the open options.

10、MQQueue remoteQ = qMgr.accessQueue(qName, openOptions;    / Define a simple WebSphere MQ message, and write some text in UTF format. MQMessage putMessage = new MQMessage(; putMessage.writeUTF("Test" / specify the message options. MQPutMessageOptions pmo = new MQPutMessa

11、geOptions(; / accept the defaults, same as MQPMO_DEFAULT/ put the message on the queue remoteQ.put(putMessage,pmo; System.out.println("Message has been input into the Remote Queue"/ Close the queue. remoteQ.close(; / Disconnect from the queue manager qMgr.disconnect(; catch (MQException ex

12、 / If an error has occurred in the above, try to identify what went wrong / Was it a WebSphere MQ error? System.out.println("A WebSphere MQ error occurred : Completion code " + pletionCode + " Reason code " + ex.reasonCode; catch (IOException ex / Was it a Java buffer space error? System.out.println("An error occurred whilst writing to the message buffer: " + ex; catch(Exception exex.printStackTrace(;-運(yùn)行程序后,請(qǐng)?jiān)贐機(jī)器的本地隊(duì)列LQ_BBB中檢查是否有消息存在,如果有說(shuō)明測(cè)試成功。以上測(cè)試程序在JDK1.4.2的環(huán)境中測(cè)試成功。通過(guò)以上內(nèi)容的介紹,使我們了解MQ有哪些主要的對(duì)象,環(huán)境如何

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論