Frage

Das DBMS_AQ Paket hat eine Methode namens POST.

Die Dokumentation sagt:

  

Diese Prozedur Beiträge zu einer Liste von   anonyme Abonnements, so dass alle   Kunden, die sich für die registriert sind,   Abonnements zu erhalten Benachrichtigungen von   persistente Nachrichten. Diese Funktion ist   nicht mit gepufferte Nachrichten unterstützt.

und

  

Mit diesem Aufruf einen Best-Effort   Garantie. Eine Meldung geht an   Registrierte Kunden höchstens einmal. Diese   Anruf wird in erster Linie für den Leichtbau verwendet   Benachrichtigung. Wenn eine Anwendung Bedürfnisse   steifere Garantien, dann kann es   Einreihen in eine Warteschlange.

Ich verstehe all die Worte, aber ich sehe keinen Zweck für nicht garantierte Messaging. Ich Warteschlange etwas, weil ich es brauche irgendwo zu bekommen. Vielleicht ist es nur, dass mein Geschäft nicht für diesen Anwendungsfall hat. Ich würde wissen, welche Anwendungsfälle Sie für eine solche Technologie.

War es hilfreich?

Lösung

Der erste, der in den Sinn kommt, ist, dass Sie eine große Anzahl von Client-Anwendungen in der DB Information interessiert haben. Einige System löst ein Ereignis, das die Datenbank mit nützlichen aktualisiert, aber nicht so wichtige Informationen (zum Beispiel Gesamtzahl der Zeilen in einer Tabelle, die dem Benutzer angezeigt wird).

Sie will dann diese an den Kunden übertragen, aber wenn ein Kunde wirklich besetzt ist (oder offline kurz - zum Beispiel Netzwerk trennen), kann dieser Ansatz verwendet werden, um die unwichtige Nachricht fallen zu lassen. Dies kann der beste Ansatz in einigen Situationen zu nehmen, als ob sie der Client offline sind, wenn wieder aktiv nachzuschlagen alle Daten wieder anschließen.

Während es Anwendungsfälle sind, ich würde vermuten, sie sind viel seltener als garantierte Lieferung -. Wie TCP scheint deutlich als UDP mehr verwendet werden

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top