{"id":38171,"date":"2019-10-31T22:22:03","date_gmt":"2019-10-31T19:22:03","guid":{"rendered":"https:\/\/prohoster.info\/blog\/ponimanie-brokerov-soobshhenij-izuchenie-mehaniki-obmena-soobshheniyami-posredstvom-activemq-i-kafka-glava-1\/"},"modified":"2019-10-31T22:22:03","modified_gmt":"2019-10-31T19:22:03","slug":"ponimanie-brokerov-soobshhenij-izuchenie-mehaniki-obmena-soobshheniyami-posredstvom-activemq-i-kafka-glava-1","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ponimanie-brokerov-soobshhenij-izuchenie-mehaniki-obmena-soobshheniyami-posredstvom-activemq-i-kafka-glava-1","title":{"rendered":"Verstehen von Nachrichtenbrokern. Mechanismen der Nachrichten\u00fcbertragung durch ActiveMQ und Kafka. Kapitel 1","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Hallo zusammen!<\/p>\n<p>Ich habe mit der \u00dcbersetzung eines kleinen Buches begonnen:<br \/>\n&#171;<b><noindex><a rel=\"nofollow\" href=\"https:\/\/www.oreilly.com\/library\/view\/understanding-message-brokers\/9781492049296\/\">Understanding Message Brokers<\/a><\/noindex><\/b>\u201e <br \/>\nAutor: Jakub Korab, Verlag: O'Reilly Media, Inc., Ver\u00f6ffentlichungsdatum: Juni 2017, ISBN: 9781492049296.<\/p>\n<p>Aus der Einleitung des Buches:<br \/>\n\u201e\u2026 <i>Dieses Buch wird Ihnen beibringen, \u00fcber Systeme zum Austausch von Nachrichten \u00fcber Broker nachzudenken, indem zwei beliebte Broker-Technologien, Apache ActiveMQ und Apache Kafka, verglichen und gegen\u00fcbergestellt werden. Es werden Anwendungsbeispiele und Entwicklungsimpulse dargelegt, die dazu f\u00fchrten, dass deren Entwickler v\u00f6llig unterschiedliche Ans\u00e4tze im selben Bereich \u2014 dem Nachrichtenaustausch zwischen Systemen mit einem vermittelnden Broker \u2014 verfolgten. Wir werden diese Technologien von Grund auf untersuchen und die Auswirkungen verschiedener Designoptionen auf diesem Weg herausarbeiten. Sie werden ein tiefes Verst\u00e4ndnis f\u00fcr beide Produkte erlangen, wissen, wie sie zu nutzen sind und wie nicht, und verstehen, worauf zu achten ist, wenn Sie in Zukunft andere Technologien f\u00fcr den Nachrichtenaustausch betrachten.<\/i> \u2026\u201c<\/p>\n<p>Bis jetzt \u00fcbersetzte Teile:<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/466385\">Kapitel 1. Einf\u00fchrung<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/466585\">Kapitel 3. Kafka<\/a><\/noindex><\/p>\n<p>Ich werde die fertigen Kapitel nach und nach ver\u00f6ffentlichen.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>KAPITEL 1<\/h2>\n<p><\/p>\n<h2>Einf\u00fchrung<\/h2>\n<p>\nDer intersystemliche Nachrichtenaustausch ist eines der am wenigsten verstandenen Bereiche der IT. Als Entwickler oder Architekt sind Sie m\u00f6glicherweise gut mit verschiedenen Frameworks und Datenbanken vertraut. Es ist jedoch sehr wahrscheinlich, dass Sie nur fl\u00fcchtig mit dem Funktionsweise von brokerbasierten Nachrichtenaustauschtechnologien vertraut sind. Wenn Sie sich so f\u00fchlen, brauchen Sie sich keine Sorgen zu machen, Sie sind in guter Gesellschaft.<\/p>\n<p>Die Menschen haben normalerweise nur sehr begrenzten Kontakt mit der Messaging-Infrastruktur. Oft wird auf ein System zugegriffen, das lange Zeit zuvor erstellt wurde, oder es wird ein Distributionspaket aus dem Internet heruntergeladen, installiert in der PROD und daraufhin beginnt man, Code daf\u00fcr zu schreiben. Nach dem Start der Infrastruktur in der PROD k\u00f6nnen die Ergebnisse uneindeutig sein: Nachrichtenverlust bei Ausf\u00e4llen, das Senden funktioniert nicht so, wie Sie es erwartet haben, oder die Broker 'h\u00e4ngen' Ihre Producer oder senden keine Nachrichten an Ihre Consumer.<\/p>\n<p>Klingt bekannt?<\/p>\n<p>Ein verbreitetes Szenario ist, dass Ihr Messaging-Code eine Zeit lang hervorragend funktioniert. Bis er pl\u00f6tzlich ausf\u00e4llt. Diese Phase sch\u00fcrt die Wachsamkeit und vermittelt ein falsches Sicherheitsgef\u00fchl, was zu noch mehr Code f\u00fchrt, der auf falschen Vorstellungen \u00fcber das grundlegende Verhalten der Technologie basiert. Wenn etwas nicht mehr funktioniert, stehen Sie der unangenehmen Wahrheit gegen\u00fcber: Sie haben das grundlegende Verhalten des Produkts oder die Kompromisse, die die Autoren getroffen haben, nicht wirklich verstanden, wie beispielsweise Leistung gegen Zuverl\u00e4ssigkeit oder Transaktionalit\u00e4t gegen horizontale Skalierbarkeit.<\/p>\n<p>Ohne ein tiefes Verst\u00e4ndnis daf\u00fcr, wie Broker arbeiten, treffen Menschen scheinbar vern\u00fcnftige Behauptungen \u00fcber ihre Messaging-Systeme, wie zum Beispiel:<\/p>\n<ul>\n<li>Das System wird niemals Nachrichten verlieren.<\/li>\n<li>Nachrichten werden sequenziell verarbeitet.<\/li>\n<li>Die Hinzuf\u00fcgung von Consumer wird das System schneller machen.<\/li>\n<li>Nachrichten werden nur einmal zugestellt.<\/li>\n<\/ul>\n<p>\nLeider basieren einige dieser Behauptungen auf Annahmen, die nur unter bestimmten Umst\u00e4nden gelten, w\u00e4hrend andere einfach falsch sind.<\/p>\n<p>Dieses Buch wird Ihnen beibringen, \u00fcber Messaging-Systeme auf Basis von Brokern nachzudenken, indem es zwei beliebte Broker-Technologien vergleicht und gegen\u00fcberstellt: Apache ActiveMQ und Apache Kafka. Hier werden Anwendungsbeispiele und Entwicklungsanreize dargestellt, die dazu gef\u00fchrt haben, dass ihre Entwickler v\u00f6llig unterschiedliche Ans\u00e4tze im gleichen Bereich \u2013 Messaging zwischen Systemen mit einem zwischengeschalteten Broker \u2013 gew\u00e4hlt haben. Wir werden diese Technologien von Grund auf betrachten und den Einfluss verschiedener Designoptionen auf diesem Weg hervorheben. Sie werden ein tiefes Verst\u00e4ndnis beider Produkte gewinnen, verstehen, wie sie eingesetzt werden sollten und wie nicht, und lernen, worauf Sie bei der Pr\u00fcfung anderer Messaging-Technologien in der Zukunft achten sollten.<\/p>\n<p>Bevor wir beginnen, lassen Sie uns die Grundlagen durchgehen.<\/p>\n<h3>Was ist ein Messaging-System und wozu wird es ben\u00f6tigt?<\/h3>\n<p>\nDamit zwei Anwendungen miteinander kommunizieren k\u00f6nnen, m\u00fcssen sie zun\u00e4chst eine Schnittstelle definieren. Die Definition dieser Schnittstelle umfasst die Auswahl eines Transport- oder Protokolls, wie HTTP, MQTT oder SMTP, und die Abstimmung der Nachrichtenformate, \u00fcber die die Systeme kommunizieren werden. Dies kann ein strenger Prozess sein, wie die Definition eines XML-Schemas mit Anforderungen an die Payload-Kosten der Nachricht, oder es kann viel weniger formell sein, wie eine Vereinbarung zwischen zwei Entwicklern, dass ein bestimmter Teil der HTTP-Anfrage eine Client-ID enthalten wird.<\/p>\n<p>Sobald das Nachrichtenformat und die Reihenfolge des Versands zwischen den Systemen abgestimmt sind, k\u00f6nnen sie miteinander interagieren, ohne sich um die Implementierung des anderen Systems k\u00fcmmern zu m\u00fcssen. Die inneren Abl\u00e4ufe dieser Systeme, wie Programmiersprache oder verwendeter Framework, k\u00f6nnen sich im Laufe der Zeit \u00e4ndern. Solange der Vertrag selbst aufrechterhalten wird, kann die Interaktion ohne \u00c4nderungen auf der anderen Seite fortgesetzt werden. Diese beiden Systeme sind durch diese Schnittstelle effektiv entkoppelt.<\/p>\n<p>Nachrichtenaustauschszenarien sehen typischerweise einen Vermittler zwischen zwei Systemen vor, die interagieren, um den Sender von einem oder mehreren Empf\u00e4ngern weiter zu entkoppeln. Dabei erm\u00f6glicht das Nachrichtensystem dem Sender, eine Nachricht zu senden, ohne zu wissen, wo sich der Empf\u00e4nger befindet, ob dieser aktiv ist oder wie viele Instanzen es gibt.<\/p>\n<p>Betrachten wir einige Analogien zu den Arten von Problemen, die ein Nachrichtenaustauschsystem l\u00f6st, und f\u00fchren wir einige grundlegende Begriffe ein.<\/p>\n<h4>Punkt-zu-Punkt<\/h4>\n<p><\/p>\n<blockquote><p>Alexandra geht zur Post, um Adam ein Paket zu senden. Sie tritt an den Schalter heran und \u00fcbergibt dem Angestellten das Paket. Der Angestellte nimmt das Paket entgegen und gibt Alexandra eine Quittung. Adam muss zum Zeitpunkt des Versands des Pakets nicht zu Hause sein. Alexandra ist zuversichtlich, dass das Paket irgendwann in der Zukunft an Adam geliefert wird und kann ihre anderen Gesch\u00e4fte fortsetzen. Sp\u00e4ter erh\u00e4lt Adam das Paket.<\/p><\/blockquote>\n<p>Dies ist ein Beispiel f\u00fcr ein Nachrichtenaustauschmodell <i>punkt-zu-punkt<\/i>. Das Postamt fungiert hier als Mechanismus zur Verteilung von Paketen und gew\u00e4hrleistet, dass jedes Paket genau einmal zugestellt wird. Der Einsatz des Postamtes trennt den Akt des Versendens des Pakets von der Zustellung des Pakets.<br \/>\nIn klassischen Messaging-Systemen wird das \u00abPoint-to-Point\u00bb-Modell durch <i>Warteschlangen<\/i>implementiert. Eine Warteschlange fungiert als FIFO-Puffer (First In, First Out), auf den sich ein oder mehrere Verbraucher abonnieren k\u00f6nnen. Jede Nachricht wird nur <i>einem der abonnierten Verbraucher<\/i>zueingestellt. Warteschlangen versuchen normalerweise, die Nachrichten gerecht zwischen den Verbrauchern zu verteilen. Nur ein Verbraucher erh\u00e4lt die betreffende Nachricht.<\/p>\n<p>Auf Warteschlangen wird der Begriff \u00abzuverl\u00e4ssig\u00bb (\u00abdurable\u00bb) angewendet. <i>Zuverl\u00e4ssigkeit <\/i> Dies ist eine Eigenschaft des Services, die garantiert, dass das Messaging-System Nachrichten speichert, solange keine aktiven Abonnenten vorhanden sind, bis ein Verbraucher sich f\u00fcr die Zustellung von Nachrichten anmeldet.<\/p>\n<p>Zuverl\u00e4ssigkeit wird oft mit <i>Persistenz<\/i> verwechselt, und obwohl diese beiden Begriffe austauschbar sind, erf\u00fcllen sie unterschiedliche Funktionen. Die Persistenz definiert, ob das Messaging-System eine Nachricht in irgendeiner Art von Speicher zwischen dem Empfang und der Zustellung an den Verbraucher aufzeichnet. Nachrichten, die in eine Warteschlange gesendet werden, k\u00f6nnen persistent oder nicht persistent sein.<br \/>\nDas Point-to-Point-Messaging wird verwendet, wenn der Anwendungsfall eine einmalige Verarbeitung der Nachricht erfordert. Ein Beispiel w\u00e4re die Einzahlung von Geld auf ein Konto oder die Ausf\u00fchrung einer Lieferbestellung. Wir werden sp\u00e4ter besprechen, warum das Messaging-System allein nicht in der Lage ist, einmalige Zustellung zu gew\u00e4hrleisten und warum Warteschlangen bestenfalls eine Zustellgarantie bieten k\u00f6nnen <i>mindestens einmal<\/i>.<\/p>\n<h4>Publisher-Subscriber<\/h4>\n<p><\/p>\n<blockquote><p>Gabriella w\u00e4hlt die Konferenznummer. Solange sie mit der Konferenz verbunden ist, h\u00f6rt sie alles, was der Sprecher sagt, zusammen mit den anderen Teilnehmern des Anrufs. Wenn sie sich trennt, verpasst sie alles, was gesagt wird. Wenn sie sich erneut verbindet, h\u00f6rt sie erneut, was gesagt wird.<\/p><\/blockquote>\n<p> Dies ist ein Beispiel f\u00fcr ein Nachrichtenaustauschmodell <i>Publish-Subscribe<\/i>. Die Konferenzschaltung fungiert als Broadcast-Mechanismus. Die sprechende Person k\u00fcmmert sich nicht darum, wie viele Personen derzeit an dem Anruf teilnehmen \u2014 das System stellt sicher, dass jeder, der gerade verbunden ist, h\u00f6rt, was gesagt wird.<br \/>\nIn klassischen Messaging-Systemen wird das Messaging-Modell \u00abPublish-Subscribe\u00bb durch <i>Themen<\/i>. Das Topic bietet denselben Broadcasting-Mechanismus wie die Konferenzschaltung. Wenn eine Nachricht an das Topic gesendet wird, wird sie verteilt <i>an alle abonnierenden Benutzer<\/i>.<\/p>\n<p>Topics sind in der Regel <i>nicht zuverl\u00e4ssig (nondurable)<\/i>. Wie ein Zuh\u00f6rer, der nicht h\u00f6rt, was w\u00e4hrend eines Konferenzanrufs gesagt wird, wenn der Zuh\u00f6rer sich abmeldet, verpassen Topic-Abonnenten alle Nachrichten, die in dem Moment gesendet werden, wo sie offline sind. Aus diesem Grund kann gesagt werden, dass Topics eine Zustellgarantie bieten, <i>nicht mehr als einmal <\/i>f\u00fcr jeden Verbraucher.<\/p>\n<p>Messaging-Modelle vom Typ \u201eVer\u00f6ffentlichung-Abonnement\u201c werden normalerweise verwendet, wenn die Nachrichten informativen Charakter haben und der Verlust einer Nachricht nicht besonders bedeutsam ist. Zum Beispiel kann ein Topic Temperaturdaten von einer Gruppe von Sensoren einmal pro Sekunde \u00fcbertragen. Ein System, das an der aktuellen Temperatur interessiert ist und sich auf das Topic abonniert hat, wird sich nicht sorgen, wenn es eine Nachricht verpasst \u2013 eine weitere wird in K\u00fcrze gesendet.<\/p>\n<h4>Hybride Modelle<\/h4>\n<p><\/p>\n<blockquote><p>Die Website des Shops stellt Nachrichten \u00fcber Bestellungen in eine \u201eNachrichtenschlange\u201c. Der Hauptverbraucher dieser Nachrichten ist das Ausf\u00fchrungssystem. Dar\u00fcber hinaus muss das Auditsystem Kopien dieser Bestellnachrichten f\u00fcr die nachtr\u00e4gliche Nachverfolgung haben. Beide Systeme d\u00fcrfen keine Nachrichten verpassen, auch wenn die Systeme selbst f\u00fcr eine gewisse Zeit nicht verf\u00fcgbar sind. Die Website muss keine Kenntnisse \u00fcber andere Systeme haben.<\/p><\/blockquote>\n<p> Einsatzszenarien erfordern h\u00e4ufig eine Kombination der Messaging-Modelle \u201eVer\u00f6ffentlichung-Abonnement\u201c und \u201ePunkt-zu-Punkt\u201c, zum Beispiel wenn mehrere Systeme eine Kopie der Nachricht ben\u00f6tigen und sowohl Zuverl\u00e4ssigkeit als auch Persistenz erforderlich sind, um den Verlust einer Nachricht zu verhindern.<\/p>\n<p>In diesen F\u00e4llen ist ein Empf\u00e4nger (destination) erforderlich (allgemeiner Begriff f\u00fcr Warteschlangen und Topics), der die Nachrichten haupts\u00e4chlich wie ein Topic verteilt, sodass jede Nachricht an ein separates System gesendet wird, das an diesen Nachrichten interessiert ist, aber auch, wo jedes System mehrere Verbraucher bestimmen kann, die eingehende Nachrichten empfangen, was eher einer Warteschlange \u00e4hnelt. Die Art des Lesens in diesem Fall ist <i>einmal f\u00fcr jede interessierte Partei<\/i>. Diese hybriden Adressaten verlangen oft nach Zuverl\u00e4ssigkeit (Durability), sodass, wenn der Verbraucher sich trennt, die zu diesem Zeitpunkt gesendeten Nachrichten nach der Wiederverbindung des Verbrauchers angenommen werden.<\/p>\n<p>Hybride Modelle sind nicht neu und k\u00f6nnen in den meisten Nachrichtenaustauschsystemen angewendet werden, einschlie\u00dflich sowohl ActiveMQ (\u00fcber virtuelle oder zusammengesetzte Adressaten, die Themen und Warteschlangen kombinieren) als auch Kafka (implizit als grundlegende Eigenschaft des Designs ihres Adressaten).<\/p>\n<p>Jetzt, da wir einige grundlegende Begriffe und das Verst\u00e4ndnis daf\u00fcr haben, wof\u00fcr wir ein Nachrichtenaustauschsystem ben\u00f6tigen k\u00f6nnten, lassen Sie uns zu den Details \u00fcbergehen.<\/p>\n<p><b> \u00dcbersetzung von: <noindex><a rel=\"nofollow\" href=\"http:\/\/tele.gg\/middle_java\">tele.gg\/middle_java<\/a><\/noindex><\/b><\/p>\n<p>Der n\u00e4chste \u00fcbersetzte Teil: <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/466585\">Kapitel 3. Kafka<\/a><\/noindex><\/p>\n<p><i>Fortsetzung folgt\u2026<\/i><br \/>\n<br \/>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/466385\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u041d\u0430\u0447\u0430\u043b \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043a\u043d\u0438\u0433\u0438: &#171;Understanding Message Brokers&#171;, \u0430\u0432\u0442\u043e\u0440: Jakub Korab, \u0438\u0437\u0434\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e: O&#8217;Reilly Media, Inc., \u0434\u0430\u0442\u0430 \u0438\u0437\u0434\u0430\u043d\u0438\u044f: June 2017, ISBN: 9781492049296. \u0418\u0437 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043a \u043a\u043d\u0438\u0433\u0435: &#171;\u2026 \u042d\u0442\u0430 \u043a\u043d\u0438\u0433\u0430 \u043d\u0430\u0443\u0447\u0438\u0442 \u0432\u0430\u0441 \u0440\u0430\u0441\u0441\u0443\u0436\u0434\u0430\u0442\u044c \u043e \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u043e\u0431\u043c\u0435\u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u043c\u0438 \u043d\u0430 \u0431\u0440\u043e\u043a\u0435\u0440\u0430\u0445, \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u044f \u0438 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044f \u0434\u0432\u0435 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u0431\u0440\u043e\u043a\u0435\u0440\u043e\u0432: Apache ActiveMQ \u0438 Apache Kafka. \u0417\u0434\u0435\u0441\u044c \u0431\u0443\u0434\u0443\u0442 \u0438\u0437\u043b\u043e\u0436\u0435\u043d\u044b \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-38171","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u041d\u0430\u0447\u0430\u043b \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043a\u043d\u0438\u0433\u0438: &quot;Understanding Message.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ponimanie-brokerov-soobshhenij-izuchenie-mehaniki-obmena-soobshheniyami-posredstvom-activemq-i-kafka-glava-1\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0431\u0440\u043e\u043a\u0435\u0440\u043e\u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439. \u0418\u0437\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u043a\u0438 \u043e\u0431\u043c\u0435\u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u043c\u0438 \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c ActiveMQ \u0438 Kafka. \u0413\u043b\u0430\u0432\u0430 1 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u041d\u0430\u0447\u0430\u043b \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043a\u043d\u0438\u0433\u0438: &quot;Understanding Message.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ponimanie-brokerov-soobshhenij-izuchenie-mehaniki-obmena-soobshheniyami-posredstvom-activemq-i-kafka-glava-1\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:22:03+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:22:03+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Verstehen von Nachrichtenschaltern. Erforschung der Mechanik des Nachrichtenaustauschs \u00fcber ActiveMQ und Kafka. Kapitel 1 | ProHoster","description":"Hallo zusammen! Ich habe mit der \u00dcbersetzung eines kleinen Buches begonnen: \"Understanding Message.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ponimanie-brokerov-soobshhenij-izuchenie-mehaniki-obmena-soobshheniyami-posredstvom-activemq-i-kafka-glava-1","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0431\u0440\u043e\u043a\u0435\u0440\u043e\u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439. \u0418\u0437\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u043a\u0438 \u043e\u0431\u043c\u0435\u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u043c\u0438 \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c ActiveMQ \u0438 Kafka. \u0413\u043b\u0430\u0432\u0430 1 | ProHoster","og:description":"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u041d\u0430\u0447\u0430\u043b \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043a\u043d\u0438\u0433\u0438: &quot;Understanding Message.","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ponimanie-brokerov-soobshhenij-izuchenie-mehaniki-obmena-soobshheniyami-posredstvom-activemq-i-kafka-glava-1","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:22:03+00:00","article:modified_time":"2019-10-31T19:22:03+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"38171","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 20:46:00","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:14:22","updated":"2026-01-23 20:46:00","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/38171","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=38171"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/38171\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=38171"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=38171"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=38171"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}