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);##第一個(gè)參數(shù)控制事務(wù),第二個(gè)參數(shù)控制消息
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

Undress AI Tool
Ausziehbilder kostenlos

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

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

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

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)

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.

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

目錄結(jié)構(gòu)引入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. 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.

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

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
