A WS-ReliableMessaging (megbízható üzenetküldés) egy olyan protokollt definiál, ami lehetővé teszi, hogy a SOAP üzenetek megbízhatóan szállíthatóak legyenek az elosztott alkalmazások között szoftverkomponens, rendszer vagy hálózati hiba esetén. Az eredeti specifikációt a BEA Systems, a Microsoft, az IBM, és a Tibco írta 2003. márciusában, majd az elkövetkező két évben tovább finomított ezen. A 2005. évi februári verziót nyújtották be az OASIS Web Services Reliable Exchange (WS-RX) Technical Committee-hez 2005 júniusában. Ennek eredményeként jött létre a WS-ReliableMessaging 1.1, melyet 2007. június 14-én hagyták jóvá, mint hivatalos OASIS szabványt, az 1.2 verziót pedig 2009. február 2-án fogadták el.

A WS-ReliableMessaging előtt az OASIS készített egy hasonló szabványt (WS-Reliability), amit gyártók egy csoportja támogatott. A csoport tagjai: Fujitsu, Hitachi, NEC, Oracle Corporation, Progress Software, és Sun Microsystems. A legtöbb ilyen forgalmazó most már a WS-ReliableMessaging specifikációt is támogatja.

Megbízható Üzenetküldés Modell szerkesztés

Az Alkalmazás Forrás (Application Source, AS) megbízható módon szeretne üzenetet küldeni az Alkalmazás Célnak (Application Destination, AD) egy megbízhatatlan infrastruktúrán keresztül. Ehhez arra van szükség, hogy egy Megbízható Üzenet Forrást (Reliable Messaging Source, RMS) és egy Megbízható Üzenet Célt (Reliable Messaging Destination, RMD) használjanak. Az AS küld egy üzenetet az RMS-nek. Az RMS a WS-ReliableMessaging (WS-RM) protokollt használva továbbítja az üzenetet az RMD-nek. Az RMD kézbesíti az üzenetet az AD-nak. Ha az RMS valamilyen oknál fogva nem tudja továbbítani az üzenetet az RMD-nek, akkor dobnia kell egy kivételt, vagy valamilyen más módon kell jeleznie az AS-nek, hogy az üzenet nem lett továbbítva. Az AS és az RMS implementálható közös folyamatkénk, vagy elkülönített komponensekként is. Az AD és az RMD hasonlóan.

A legfontosabb dolog, amit szem előtt kell tartani, hogy a WS-RM specifikáció csak ajánlatot ad az üzenet tartalmára és viselkedésére vonatkozóan. Azt, hogy az üzenet hogyan lesz elküldve az AS-től az RMS-nek, hogy hogyan kézbesíti az RMD az AD-nak, hogy az üzenetet a lemezen tárolják, vagy a memóriában tartják, stb, nem tartalmazza a specifikáció.

A WS-RM protokoll számos szállítási lehetőséget definiál és támogat. Ezek a következők:

  • AtLeastOnce (legalább egyszer): Minden üzenet legalább egyszer kézbesítve lesz az AD-nak. Ha az üzenetet nem tudják kézbesíteni, az RMS és/vagy az RMD hibát dob. Az üzenetek többször is megérkezhetnek az AD-hoz (vagyis az AD kaphat duplikált üzeneteket).
  • AtMostOnce (legfeljebb egyszer): Minden üzenet legfeljebb egyszer lesz kézbesítve az AD-nak. Az üzenetek lehet, hogy nem lesznek kézbesítve az AD-nak, viszont sohasem kap duplikált üzeneteket.
  • ExactlyOnce (pontosan egyszer): Minden üzenet pontosan egyszer lesz kézbesítve az AD-nak. Ha az üzenetet nem tudják kézbesíteni, az RMS és/vagy az RMD hibát dob. Az AD sosem kap duplikált üzeneteket.
  • InOrder (sorrendbn): Az üzeneteket az RMD abban a sorrendben küldi el az AD-nak, ahogy az AS küldte az RMS-nek. Ez a lehetőség kombinálható valamennyi fentebb leírt lehetőséggel.

Alakítható architektúra szerkesztés

A WS-ReliableMessaging a SOAP és a WSDL kiterjeszthető modelljét használja. A WS-RM nem definiálja az összes funkciót, ami szükséges a teljes üzenetküldési folyamathoz. A WS-RM csak egy építőelem, amit együtt használnak más Web Szolgáltatás specifikációkkal és alkalmazás-specifikus protokollokkal, hogy felépítsék a teljes üzenetküldési folyamatot.

Kritika szerkesztés

Ez a cikk leírja, hogy miért nem szükséges a megbízhatóság egy üzenetnél, de miért szükséges a vállalkozások szintjén.

Történet szerkesztés

WS-ReliableMessaging Implementációk szerkesztés

Kapcsolódó szócikkek szerkesztés

További információk szerkesztés