在Java
EE應(yīng)用程序的典型體系結(jié)構(gòu)中,數(shù)據(jù)訪問(wèn)層具有與數(shù)據(jù)存儲(chǔ)進(jìn)行通信的技術(shù),如Java持久性API(JPA)、Java連接器體系結(jié)構(gòu)(JCA),它將應(yīng)用程序連接到企業(yè)信息系統(tǒng)(EIS);和Java消息服務(wù)(JMS)。對(duì)java感興趣的同學(xué)可以參加java培訓(xùn),可以獲得快速有效的學(xué)習(xí)。
JMS的用途是什么?
JMS用于在分布式應(yīng)用程序之間以松散耦合、異步、可伸縮和安全的方式傳遞消息。應(yīng)用程序使用所謂的目的地,通過(guò)面向消息的中間件發(fā)送和接收消息。
異步意味著消息的發(fā)送方和接收方不需要同時(shí)與消息隊(duì)列交互。因此,接收方可以在消息發(fā)送后的某個(gè)時(shí)間提取消息。
松散耦合,因?yàn)榘l(fā)送方對(duì)接收方一無(wú)所知,接收方對(duì)發(fā)送方一無(wú)所知。
可伸縮性意味著系統(tǒng)的不同部分可以以不同的速率增長(zhǎng),并響應(yīng)應(yīng)用程序負(fù)載。因此,例如,如果站點(diǎn)上突然爆發(fā)的活動(dòng)導(dǎo)致通過(guò)消息傳遞中間件發(fā)送的消息急劇增加,那么消息可以在接收方響應(yīng)或自動(dòng)縮放時(shí)排隊(duì)。這為系統(tǒng)提供了健壯性,否則系統(tǒng)將難以處理突然的負(fù)載,應(yīng)用程序?qū)㈤_(kāi)始表現(xiàn)糟糕或完全停止工作。在java培訓(xùn)中,有很多關(guān)于JMS的培訓(xùn)課程,在專(zhuān)業(yè)老師的教學(xué)指導(dǎo)下,可以很全面地掌握J(rèn)MS的相關(guān)知識(shí)和技能。
何時(shí)使用JMS?
使用JMS取決于用例,但通常,它至少會(huì)屬于這些用例中的一個(gè)。
1.應(yīng)用程序應(yīng)該能夠發(fā)送消息,而不需要立即響應(yīng)消息。可能對(duì)消息的響應(yīng)是可選的,并且應(yīng)用程序可以在沒(méi)有響應(yīng)的情況下繼續(xù)其正常功能,或者可能是純粹的單向通信。
2.發(fā)送方不需要依賴(lài)接收方的接口,因此可以輕松更換接收方。這歸結(jié)為需要將應(yīng)用程序的各個(gè)部分解耦。
當(dāng)接收器關(guān)閉時(shí),應(yīng)用程序應(yīng)繼續(xù)運(yùn)行。接收器可能會(huì)斷開(kāi),應(yīng)用程序?qū)⒗^續(xù)正常運(yùn)行。這允許健壯性。
JMS是一個(gè)消息服務(wù)的標(biāo)準(zhǔn)或者說(shuō)是規(guī)范,允許應(yīng)用程序組件基于JavaEE平臺(tái)創(chuàng)建、發(fā)送、接收和讀取消息。它使分布式通信耦合度更低,消息服務(wù)更加可靠以及異步性。想學(xué)習(xí)java技術(shù)的同學(xué),不妨報(bào)個(gè)Java培訓(xùn)班,有明確清晰的學(xué)習(xí)路線,理論知識(shí)+實(shí)戰(zhàn)操作,可以獲得快速提升。