Verwandtes Verständnis der Sitzungseinstellungen in ActiveMQ
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

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

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



1. Wählen Sie das entsprechende Client-Transportprotokoll. ActiveMQ unterstützt eine Vielzahl von Client-Transportprotokollen, darunter STOMP, AMQP und OpenWire. Wählen Sie das richtige Protokoll basierend auf den Anforderungen Ihrer Anwendung, um Leistung und Zuverlässigkeit zu optimieren. 2. Konfigurieren Sie die Nachrichtenpersistenz. Permanente Nachrichten bleiben auch nach Serverneustarts bestehen, nicht persistente Nachrichten hingegen nicht. Wählen Sie für kritische Nachrichten Persistenz, um eine zuverlässige Zustellung sicherzustellen. Democode: //Nachrichtenpersistenz festlegen MessageProducerproducer=session.createProducer(destination);producer.setDeliveryMode(Deliv

1. Das Nachrichtenrouting verwendet JMSSelectors zum Filtern von Nachrichten: Verwenden Sie JMSSelectors, um eingehende Nachrichten basierend auf Nachrichtenattributen zu filtern und nur relevante Nachrichten zu verarbeiten. Erstellen Sie einen benutzerdefinierten Nachrichtenrouter: Erweitern Sie die Routingfunktionen von ActiveMQ, um Nachrichten an bestimmte Ziele zu senden, indem Sie einen benutzerdefinierten Router schreiben. Konfigurieren Sie den Polling-Lastausgleich: Verteilen Sie eingehende Nachrichten gleichmäßig auf mehrere Nachrichtenkonsumenten, um die Verarbeitungsfähigkeiten zu verbessern. 2. Persistenz ermöglicht dauerhafte Sitzungen: Sie stellt sicher, dass Nachrichten auch bei einem Anwendungs- oder Serverausfall dauerhaft gespeichert werden können, um Verluste zu vermeiden. Konfigurieren Sie die Dead Letter Queue (DLQ): Verschieben Sie Nachrichten, die nicht verarbeitet werden können, zur erneuten Verarbeitung oder Analyse in die DLQ. Verwenden des Journalspeichers: Verbessern Sie die Leistung persistenter Nachrichten, reduzieren Sie sie

ActiveMQ ist eine von Apache entwickelte Open-Source-Nachrichten-Middleware. Sie wurde in der Java-Sprache entwickelt und zeichnet sich durch zuverlässige Nachrichtenübermittlung, asynchrone Kommunikation und Cluster-Unterstützung aus. ActiveMQ kann Daten zwischen verschiedenen Anwendungen austauschen und unterstützt mehrere Messaging-Protokolle wie JMS, AMQP und MQtT. 1. Vorteile von ActiveMQ ActiveMQ ist eine sehr ausgereifte Nachrichten-Middleware. Sie bietet die folgenden Vorteile: Zuverlässige Nachrichtenzustellung: Selbst bei einem Netzwerkausfall oder einem Serverausfall geht die Nachricht nicht verloren . Asynchrone Kommunikation: ActiveMQ unterstützt die asynchrone Kommunikation und ermöglicht so eine Nicht-Echtzeit-Kommunikation zwischen verschiedenen Anwendungen.

目录结构引入maven依赖org.springframework.bootspring-boot-starter-parent1.5.4.RELEASEUTF-8UTF-81.8org.springframework.bootspring-boot-starterorg.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot- starter-testtestorg.springframework

1. Message Broker ist die Kernkomponente von ActiveMQ und für die Verarbeitung aller Nachrichtenflüsse verantwortlich. Es bietet eine Plattform, auf der Anwendungen Verbindungen herstellen, Nachrichten senden und empfangen können. BrokerServicebroker=newBrokerService();broker.addConnector("tcp://0.0.0.0:61616");broker.start();2 Die Nachrichtenwarteschlange ist ein logischer Konzeptcontainer zum Speichern von Nachrichten in ActiveMQ. Eine Nachrichtenwarteschlange kann Nachrichten von mehreren Produzenten empfangen und an mehrere Konsumenten übermitteln. Queuequeue=session.createQueue("my

1Importieren Sie die für die Integration erforderlichen Abhängigkeiten: org.springframework.bootspring-boot-starter-activemq2Erstellen Sie die application.properties-Datei spring.activemq.broker-url=tcp://127.0.0.1:61616spring.activemq.user=adminspring.activemq =adminserver.port=8080queue=myqueue3. Benutzerdefinierte Konfigurationsdatei QueueConfig liest die Konfigurationsdatei

1. Einführung in JavaJMS JavaJMS ist eine Java-API zum Erstellen, Senden und Empfangen von Nachrichten. Es bietet zuverlässige Messaging-Funktionen und ist ideal für verteilte Systeme und Anwendungen auf Unternehmensebene. Messaging-Systeme können Nachrichten von einer Anwendung an eine andere senden, selbst wenn sich die beiden Anwendungen auf unterschiedlichen Computern befinden. 2.JMSAPIJMSAPI definiert eine Reihe von Schnittstellen und Klassen zum Senden und Empfangen von Nachrichten. Zu diesen Schnittstellen und Klassen gehören: javax.jms.ConnectionFactory: Wird zum Erstellen von Verbindungen zu JMS-Servern verwendet. javax.jms.Connection: Verbindung zum JMS-Server. javax.

ActiveMQ ist ein vollständig Open-Source-Java-Nachrichtenserver und eines der beliebtesten Projekte der Apache Software Foundation. Es folgt der Java Message Service (JMS)-Spezifikation und stellt eine Reihe von APIs zum Erstellen verteilter, asynchroner und nachrichtenorientierter Anwendungen bereit. ActiveMQ ist für seine Zuverlässigkeit, Effizienz und Flexibilität bekannt und eignet sich daher ideal für eine Vielzahl von Unternehmensanwendungen. Zuverlässigkeit: ActiveMQ verwendet einen dauerhaften Speichermechanismus, um eine zuverlässige Zustellung von Nachrichten sicherzustellen. Wenn eine Nachricht an ActiveMQ gesendet wird, wird sie auf die Festplatte geschrieben und selbst wenn der Server ausfällt, gehen diese Nachrichten nicht verloren. Wenn der Server neu startet, stellt er diese Nachrichten aus dem persistenten Speicher wieder her und übergibt sie
