R
reNur
Gast
Hallo,
vllt eine etwas seltsame Frage - aber ich probiers trotzdem:
In einer Anwendung wird JMS für folgendes Szenario verwendet:
Client stellen Anfragen an den Server. Der Server verteilt diese an verschi. Applikationen (per JMS angebunden) und bekommt dann die berechneten Rückgabewerte.
Im Moment ist es so, dass die Rückgabedaten einfach in einer JMS-Queue bleiben und vom Server abgefragt werden. Für das Empfangen wird ein SLSB aufgerufen, das sich mit der JMS-Queue verbindet und mit receive( timeout ) auf die entsprechende Antwort wartet.
So, das große Problem ist natürlich: Pro Client, der die Rückgabedaten erwartet, wird neben einer SLSB-Instanz eine JMS-Session belegt, was ja nicht unbedingt Sinn der Sache ist. Der ganze Vorgang wird relativ schnell abgewickelt, performancetechnisch lohnt es sich also nicht, die Daten persistent zu machen.
Meine Frage nun: Welchen Ansatz könnte ich noch verfolgen, wenn ich ein Verhalten wie in JMS haben will - also mit einer receive Methode und einem zu definierenden Timeout auf ein Ergebnis "warten".
vllt eine etwas seltsame Frage - aber ich probiers trotzdem:
In einer Anwendung wird JMS für folgendes Szenario verwendet:
Client stellen Anfragen an den Server. Der Server verteilt diese an verschi. Applikationen (per JMS angebunden) und bekommt dann die berechneten Rückgabewerte.
Im Moment ist es so, dass die Rückgabedaten einfach in einer JMS-Queue bleiben und vom Server abgefragt werden. Für das Empfangen wird ein SLSB aufgerufen, das sich mit der JMS-Queue verbindet und mit receive( timeout ) auf die entsprechende Antwort wartet.
So, das große Problem ist natürlich: Pro Client, der die Rückgabedaten erwartet, wird neben einer SLSB-Instanz eine JMS-Session belegt, was ja nicht unbedingt Sinn der Sache ist. Der ganze Vorgang wird relativ schnell abgewickelt, performancetechnisch lohnt es sich also nicht, die Daten persistent zu machen.
Meine Frage nun: Welchen Ansatz könnte ich noch verfolgen, wenn ich ein Verhalten wie in JMS haben will - also mit einer receive Methode und einem zu definierenden Timeout auf ein Ergebnis "warten".