Referenz-Blogbeitrag: http://www.cnblogs.com/SzeCheng/p/4792084.html
Referenz-Blogbeitrag: http://activemq.apache.org/producer-flow-control. html
Begriffserklärung:
P: Producer
C: Consumer
Server: P oder ActiveMQ-Dienst
Client: ActiveMQ Dienst oder C
Das Zeichen dafür, dass der Client eine Nachricht erfolgreich empfängt, ist, dass die Nachricht signiert wurde. Der erfolgreiche Empfang einer Nachricht umfasst im Allgemeinen die folgenden drei Phasen:
1. Der Kunde erhält die Nachricht;
2. Der Client verarbeitet die Nachricht;
3. Die Nachricht ist signiert.
session = connection.createSession(Boolean.false, Session.CLIENT_ACKNOWLEDGE);##第一个参数控制事务,第二个参数控制消息
In einer Sitzung ohne Transaktionen hängt es von den Sitzungseinstellungen ab, wann und wie eine Nachricht signiert wird.
1. Session.AUTO_ACKNOWLEDGE
Wenn der Client erfolgreich von „receive“ oder „onMessage“ zurückkehrt, signiert Session automatisch den Empfang dieser Nachricht durch den Client.
2. Session.CLIENT_ACKNOWLEDGE
Der Client signiert die Nachricht, indem er die Bestätigungsmethode der Nachricht aufruft.
message.acknowledge();
In einer Sitzung mit einer Transaktion erfolgt die Signatur automatisch, wenn die Transaktion übermittelt wird. Wenn die Transaktion zurückgesetzt wird, werden alle empfangenen Nachrichten erneut zugestellt. Tatsächlich ist Session.CLIENT_ACKNOWLEDGE hier von geringem Nutzen.
session = connection.createSession(Boolean.TRUE, Session.CLIENT_ACKNOWLEDGE);
session.commit();
Zusammenfassung:
1 Für den Produzenten: Der Server ist P und der Client ist der ActiveMQ-Dienst. Die Sitzung ist auf AUTO_ACKNOWLEDGE und CLIENT_ACKNOWLEDGE eingestellt. Relativ gesehen ist der Unterschied nicht sehr groß.
2. Für Verbraucher: Der Server ist ActiveMQ und der Client ist C. Die Sitzung wird auf AUTO_ACKNOWLEDGE gesetzt. Wenn eine Nachricht empfangen wird (receive oder onMessage erfolgreich zurückgegeben), ist der Verbrauch erfolgreich und die Daten werden aus der Warteschlange entfernt. Es ist uns egal, ob die Daten korrekt zu den gewünschten Ergebnissen verarbeitet werden; wenn die Sitzung auf CLIENT_ACKNOWLEDGE gesetzt ist, muss die Bestätigungsmethode für eine erfolgreiche Nutzung manuell aufgerufen werden, und dann werden die Daten aus der Warteschlange entfernt.
3. In welchem Modus die Sitzungen von P und C keinen Einfluss aufeinander haben.

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

Dreamweaver Mac
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)