[MWy] JMS sessions

Petr Tuma petr.tuma at dsrg.mff.cuni.cz
Fri Apr 18 20:58:04 CEST 2008


Dobry den,

> Je fronta se jmenem "name" vytvorena na jedne session a pote i na druhe
> (jine) session ta sama? Trochu jsem si s tim pohraval a dosel jsem k tomu,
> ze fronta je identifikovana pouze svym nazvem - na session nezalezi, tedy,
> ze session slouzi pouze k tomu, abychom si mohli zvolit zpusob potvrzovani
> zprav, pripadne transakci. To mi ale prijde zvlastni vzhledem k tomu, ze se
> to jmenuje session.

Vytvareni front nebo topics (pres session.createQueue nebo 
session.createTopic) jde tak trochu mimo zakladni ideu JMS, ktera je, ze 
destinations si najdete v JNDI, kam je (treba na zaklade konfigurace) 
zaregistroval vas JMS broker. Jaky je vztah mezi jmeny front a topics a 
skutecnymi objekty standard nerika, je to na konkretnim JMS brokeru.

ActiveMQ pouziva jmena front a topics jako globalni identifikatory 
spolecne v ramci celeho JMS brokeru (nebo nekolika spojenych brokeru, 
pokud si jej tak nastavite), takze kdykoliv pouzijete stejne jmeno, 
dostanete odkaz na stejny objekt (frontu nebo topic), bez ohledu na session.

Pokud chcete vytvorit unikatni frontu nebo topic, je na to ta varianta 
volani createTemporary. Funkce createQueue a createTopic berte spis jako 
funkce "vytvor mi objekt, ktery reprezentuje jiz drive jinde 
nakonfigurovanou frontu nebo tema", spis nez "vytvor mi novou frontu 
nebo tema".

Petr Tuma





More information about the NSWI080 mailing list