2012-04-11 8 views
5

Was passiert wirklich unter der Haube, wenn ich einen MessageListener auf meine Warteschlange MessageConsumer Objekt gesetzt. Führt das MessageConsumer-Objekt eine Art Polling hinter der Szene durch oder ist dies ein echter Push, der vom JMS-Server ausgeführt wird?JMS MessageConsumer MessageListener macht Push oder Pull?

Java Message Service (O'Reilly Java Series) von David A. Chappell, Richard Monson-Haefel und Mark Richards, p10 KAPITEL1: Punkt-zu-Punkt-

Das Punkt-zu-Punkt-Messaging-Modell hat traditionell ein pullbased oder-Polling-basiertes Modell, wo Nachrichten aus der Warteschlange angefordert werden, anstatt automatisch automatisch Anrufe t an den Client geschoben

http://docs.oracle.com/javaee/1.4/tutorial/doc/JMS4.html#wp79175

Wenn die Nachrichtenübermittlung beginnt, die JMS-Provider Die onMessage-Methode des Nachrichtenhörers, wenn eine Nachricht zugestellt wird.

Danke, Kod

Antwort

1

Diese beiden widersprechen einander nicht. P2P ist im Wesentlichen Pull-basiert, da es die Verantwortung des Empfängers ist, eine Nachricht zu lesen, sobald sie von einem Hersteller gesendet wird. onMessage() -Methode, die Sie in Ihrem 2. Zitat erwähnt haben, ist eine Benachrichtigung Mechanismus verwendet, um den Pull zu initiieren. Diese Variationen werden auch als Sync vs Async-Modi zum Empfangen von JMS-Nachrichten bezeichnet, wie beispielsweise in this chapter in Java Tutorial.

Verwandte Themen