Nachrichten-Middleware umfasst: 1. Kafka ist hauptsächlich für Abonnement- und Veröffentlichungssysteme mit hohem Durchsatz konzipiert und strebt nach Geschwindigkeit und Beständigkeit. 2. RabbitMQ ist ein Open-Source-Nachrichtenwarteschlangensystem, das mit der Erlang-Sprache entwickelt wurde und auf AMQP basiert Protokollimplementierung; 3. RocketMQ ist in reinem Java entwickelt und hat einen hohen Durchsatz.
Nachrichten-Middleware umfasst:
Kafka, RabbitMQ, RocketMQ
1 , Kafka
Kafka ist das verteilte Open-Source-Publish/Subscribe-Messagingsystem von LinkedIn und derzeit ein Top-Level-Apache-Projekt. Kafka ist hauptsächlich für Abonnement- und Veröffentlichungssysteme mit hohem Durchsatz konzipiert und strebt nach Geschwindigkeit und Haltbarkeit. Nachrichten in Kafka bestehen aus Schlüsseln, Werten und Zeitstempeln. Kafka zeichnet nur auf, welche Nachrichten ungelesen sind. In Kafka können Sie eine Verbrauchergruppe angeben, um die Abonnement- und Veröffentlichungsfunktion zu implementieren. 2. RabbitMQ . Die Hauptmerkmale von AMQP sind Nachrichtenorientierung, Warteschlangenorientierung, Routing (einschließlich Punkt-zu-Punkt und Publish/Subscribe), Zuverlässigkeit und Sicherheit. Das AMQP-Protokoll wird häufiger in Unternehmenssystemen verwendet, in Szenarien, in denen Datenkonsistenz, Stabilität und Zuverlässigkeit sehr hoch sind und Leistungs- und Durchsatzanforderungen zweitrangig sind.
3. RocketMQ
RocketMQ ist die Open-Source-Nachrichten-Middleware, die in reinem Java entwickelt wurde und einen hohen Durchsatz und eine hohe Verfügbarkeit aufweist Verteilte Systeme. Die RocketMQ-Idee stammt von Kafka, ist jedoch keine Kopie von Kafka. Sie optimiert die zuverlässige Übertragung und Transaktion von Nachrichten. Sie wird derzeit häufig in der Alibaba Group für Transaktionen, Aufladungen, Stream-Computing, Nachrichten-Push, Protokoll-Streaming und Binlog-Verteilung verwendet und andere Szenarien. Es gibt nicht viele unterstützte Clientsprachen, derzeit Java und C++, von denen C++ noch nicht ausgereift ist
5. Vergleich von Kafka, RabbitMQ und RocketMQ
1. Rabbitmq ist zuverlässiger als Kafka und Kafka eignet sich besser für die Verarbeitung mit hohem E/A-Durchsatz, wie z. B. die ELK-Protokollerfassung.
2. Es verwendet intern einen Nachrichtenstapelverarbeitungs- und Nullkopiermechanismus. Die Effizienz der Nachrichtenverarbeitung ist auf der lokalen Festplatte sehr hoch . In Bezug auf den Durchsatz ist RabbitMQ etwas schlechter als Kafka. Ihre Ausgangspunkte sind unterschiedlich und unterstützen keine Stapelspeicherung, die auf Speicher- oder Festplattenanforderungen basiert.
Das obige ist der detaillierte Inhalt vonWas sind die Nachrichten-Middlewares?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!