資源描述:
《消息中間件及websphere mq入門new》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、消息中間件概述消息隊(duì)列技術(shù)是分布式應(yīng)用間交換信息的一種技術(shù)。消息隊(duì)列可駐留在內(nèi)存或磁盤上,隊(duì)列存儲消息直到它們被應(yīng)用程序讀走。通過消息隊(duì)列,應(yīng)用程序可獨(dú)立地執(zhí)行--它們不需要知道彼此的位置、或在繼續(xù)執(zhí)行前不需要等待接收程序接收此消息。在分布式計(jì)算環(huán)境中,為了集成分布式應(yīng)用,開發(fā)者需要對異構(gòu)網(wǎng)絡(luò)環(huán)境下的分布式應(yīng)用提供有效的通信手段。為了管理需要共享的信息,對應(yīng)用提供公共的信息交換機(jī)制是重要的。設(shè)計(jì)分布式應(yīng)用的方法主要有:遠(yuǎn)程過程調(diào)用(PRC)--分布式計(jì)算環(huán)境(DCE)的基礎(chǔ)標(biāo)準(zhǔn)成分之一;對象事務(wù)監(jiān)控(OTM)--基于CORBA的面向?qū)ο蠊I(yè)標(biāo)準(zhǔn)與事務(wù)處理(TP)監(jiān)控技術(shù)的組合;消息隊(duì)列(
2、MessageQueue)--構(gòu)造分布式應(yīng)用的松耦合方法。(a)分布計(jì)算環(huán)境/遠(yuǎn)程過程調(diào)用(DCE/RPC)RPC是DCE的成分,是一個(gè)由開放軟件基金會(huì)(OSF)發(fā)布的應(yīng)用集成的軟件標(biāo)準(zhǔn)。RPC模仿一個(gè)程序用函數(shù)引用來引用另一程序的傳統(tǒng)程序設(shè)計(jì)方法,此引用是過程調(diào)用的形式,一旦被調(diào)用,程序的控制則轉(zhuǎn)向被調(diào)用程序。在RPC實(shí)現(xiàn)時(shí),被調(diào)用過程可在本地或遠(yuǎn)地的另一系統(tǒng)中駐留并在執(zhí)行。當(dāng)被調(diào)用程序完成處理輸入數(shù)據(jù),結(jié)果放在過程調(diào)用的返回變量中返回到調(diào)用程序。RPC完成后程序控制則立即返回到調(diào)用程序。因此RPC模仿子程序的調(diào)用/返回結(jié)構(gòu),它僅提供了Client(調(diào)用程序)和Server(被調(diào)用過程
3、)間的同步數(shù)據(jù)交換。(b)對象事務(wù)監(jiān)控(OTM)基于CORBA的面向?qū)ο蠊I(yè)標(biāo)準(zhǔn)與事務(wù)處理(TP)監(jiān)控技術(shù)的組合,在CORBA規(guī)范中定義了:使用面向?qū)ο蠹夹g(shù)和方法的體系結(jié)構(gòu);公共的Client/Server程序設(shè)計(jì)接口;多平臺間傳輸和翻譯數(shù)據(jù)的指導(dǎo)方針;開發(fā)分布式應(yīng)用接口的語言(IDL)等,并為構(gòu)造分布的Client/Server應(yīng)用提供了廣泛及一致的模式。(c)消息隊(duì)列(MessageQueue)消息隊(duì)列為構(gòu)造以同步或異步方式實(shí)現(xiàn)的分布式應(yīng)用提供了松耦合方法。消息隊(duì)列的API調(diào)用被嵌入到新的或現(xiàn)存的應(yīng)用中,通過消息發(fā)送到內(nèi)存或基于磁盤的隊(duì)列或從它讀出而提供信息交換。消息隊(duì)列可用在應(yīng)用中
4、以執(zhí)行多種功能,比如要求服務(wù)、交換信息或異步處理等。中間件是一種獨(dú)立的系統(tǒng)軟件或服務(wù)程序,分布式應(yīng)用系統(tǒng)借助這種軟件在不同的技術(shù)之間共享資源,管理計(jì)算資源和網(wǎng)絡(luò)通訊。它在計(jì)算機(jī)系統(tǒng)中是一個(gè)關(guān)鍵軟件,它能實(shí)現(xiàn)應(yīng)用的互連和互操作性,能保證系統(tǒng)的安全、可靠、高效的運(yùn)行。中間件位于用戶應(yīng)用和操作系統(tǒng)及網(wǎng)絡(luò)軟件之間,它為應(yīng)用提供了公用的通信手段,并且獨(dú)立于網(wǎng)絡(luò)和操作系統(tǒng)。中間件為開發(fā)者提供了公用于所有環(huán)境的應(yīng)用程序接口,當(dāng)應(yīng)用程序中嵌入其函數(shù)調(diào)用,它便可利用其運(yùn)行的特定操作系統(tǒng)和網(wǎng)絡(luò)環(huán)境的功能,為應(yīng)用執(zhí)行通信功能。如果沒有消息中間件完成信息交換,應(yīng)用開發(fā)者為了傳輸數(shù)據(jù),必須要學(xué)會(huì)如何用網(wǎng)絡(luò)和操作系
5、統(tǒng)軟件的功能,編寫相應(yīng)的應(yīng)用程序來發(fā)送和接收信息,且交換信息沒有標(biāo)準(zhǔn)方法,每個(gè)應(yīng)用必須進(jìn)行特定的編程從而和多平臺、不同環(huán)境下的一個(gè)或多個(gè)應(yīng)用通信。例如,為了實(shí)現(xiàn)網(wǎng)絡(luò)上不同主機(jī)系統(tǒng)間的通信,將要求具備在網(wǎng)絡(luò)上如何交換信息的知識(比如用TCP/IP的socket程序設(shè)計(jì));為了實(shí)現(xiàn)同一主機(jī)內(nèi)不同進(jìn)程之間的通訊,將要求具備操作系統(tǒng)的消息隊(duì)列或命名管道(Pipes)等知識。目前中間件的種類很多,如交易管理中間件(如IBM的CICS)、面向Java應(yīng)用的Web應(yīng)用服務(wù)器中間件(如IBM的WebSphereApplicationServer)等,而消息傳輸中間件(MOM)是其中的一種。它簡化了應(yīng)用之
6、間數(shù)據(jù)的傳輸,屏蔽底層異構(gòu)操作系統(tǒng)和網(wǎng)絡(luò)平臺,提供一致的通訊標(biāo)準(zhǔn)和應(yīng)用開發(fā),確保分布式計(jì)算網(wǎng)絡(luò)環(huán)境下可靠的、跨平臺的信息傳輸和數(shù)據(jù)交換。它基于消息隊(duì)列的存儲-轉(zhuǎn)發(fā)機(jī)制,并提供特有的異步傳輸機(jī)制,能夠基于消息傳輸和異步事務(wù)處理實(shí)現(xiàn)應(yīng)用整合與數(shù)據(jù)交換。IBM消息中間件MQ以其獨(dú)特的安全機(jī)制、簡便快速的編程風(fēng)格、卓越不凡的穩(wěn)定性、可擴(kuò)展性和跨平臺性,以及強(qiáng)大的事務(wù)處理能力和消息通訊能力,成為業(yè)界市場占有率最高的消息中間件產(chǎn)品。MQ具有強(qiáng)大的跨平臺性,它支持的平臺數(shù)多達(dá)35種。它支持各種主流Unix操作系統(tǒng)平臺,如:HP-UX、AIX、SUNSolaris、DigitalUNIX、OpenVMX
7、、SUNOS、NCRUNIX;支持各種主機(jī)平臺,如:OS/390、MVS/ESA、VSE/ESA;同樣支持WindowsNT服務(wù)器。在PC平臺上支持Windows9X/WindowsNT/Windows2000和UNIX(UnixWare、Solaris)以及主要的Linux版本(Redhat、TurboLinux等)。此外,MQ還支持其他各種操作系統(tǒng)平臺,如:OS/2、AS/400、SequentDYNIX、SCOOpenServ