{"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":"Verst\u00e4ndnis von Nachrichtenbrokern. Untersuchung der Nachrichten\u00fcbertragung mit 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>&#171; <br \/>\nAutor: Jakub Korab, Verlag: O'Reilly Media, Inc., Ver\u00f6ffentlichungsdatum: Juni 2017, ISBN: 9781492049296.<\/p>\n<p>Aus dem Vorwort des Buches:<br \/>\n\u201e\u2026 <i>Dieses Buch wird Sie darin schulen, \u00fcber Nachrichtenaustauschsysteme nachzudenken, indem es zwei g\u00e4ngige Broker-Technologien vergleicht: Apache ActiveMQ und Apache Kafka. Es werden Anwendungsbeispiele und Entwicklungsanreize vorgestellt, die dazu gef\u00fchrt haben, dass ihre Entwickler v\u00f6llig unterschiedliche Ans\u00e4tze f\u00fcr dasselbe Gebiet \u2014 den Nachrichtenaustausch zwischen Systemen mit einem vermittelnden Broker \u2014 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 f\u00fcr beide Produkte erwerben, wie sie richtig und falsch eingesetzt werden sollten und worauf Sie achten sollten, wenn Sie in Zukunft andere Messaging-Technologien in Betracht ziehen.<\/i> \u2026\u201c<\/p>\n<p>Bisher \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 vollst\u00e4ndigen 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>\nDie Inter-System-Nachrichtenaustausch ist eines der am wenigsten verstandenen Gebiete in der IT. Als Entwickler oder Architekt sind Sie m\u00f6glicherweise gut mit verschiedenen Frameworks und Datenbanken vertraut. Es ist jedoch durchaus m\u00f6glich, dass Sie nur fl\u00fcchtige Kenntnisse dar\u00fcber haben, wie Broker-basierte Nachrichtentechnologien funktionieren. Wenn Sie sich so f\u00fchlen, machen Sie sich keine Sorgen, Sie sind nicht allein.<\/p>\n<p>Menschen haben normalerweise nur einen begrenzten Kontakt mit der Nachrichteninfrastruktur. Oftmals verbinden sie sich mit einem System, das vor langer Zeit erstellt wurde, oder laden ein Distributionspaket aus dem Internet herunter, installieren es in der Produktion und beginnen, Code daf\u00fcr zu schreiben. Nach dem Starten der Infrastruktur in der Produktion k\u00f6nnen die Ergebnisse uneindeutig sein: Nachrichtenverlust bei Systemausf\u00e4llen, das Senden funktioniert nicht wie erwartet, oder die Broker \u201eh\u00e4ngen\u201c Ihre Producer oder senden keine Nachrichten an Ihre Consumers.<\/p>\n<p>Kommt Ihnen das bekannt vor?<\/p>\n<p>Ein h\u00e4ufiges Szenario ist, dass Ihr Nachrichten-Austauschsystem gut funktioniert, bis es pl\u00f6tzlich ausf\u00e4llt. Diese Phase kann zu einer gewissen Selbstzufriedenheit f\u00fchren und ein tr\u00fcgerisches Gef\u00fchl von Sicherheit erzeugen, was dazu f\u00fchrt, dass Sie weiterhin Code schreiben, der auf falschen Annahmen \u00fcber das grundlegende Verhalten der Technologie basiert. Wenn etwas schiefgeht, stehen Sie einer unangenehmen Wahrheit gegen\u00fcber: Sie haben das grundlegende Verhalten des Produkts oder die Kompromisse, die von den Entwicklern getroffen wurden\u2014wie Leistung versus Zuverl\u00e4ssigkeit oder Transaktionsf\u00e4higkeit versus horizontale Skalierbarkeit\u2014nicht wirklich verstanden.<\/p>\n<p>Ohne ein tiefes Verst\u00e4ndnis dar\u00fcber, wie Broker funktionieren, treffen Menschen scheinbar vern\u00fcnftige Aussagen \u00fcber ihre Nachrichten\u00fcbertragungssysteme, wie zum Beispiel:<\/p>\n<ul>\n<li>Das System wird niemals Nachrichten verlieren.<\/li>\n<li>Nachrichten werden sequentiell verarbeitet.<\/li>\n<li>Das Hinzuf\u00fcgen von Verbrauchern wird das System schneller machen.<\/li>\n<li>Nachrichten werden nur einmal zugestellt.<\/li>\n<\/ul>\n<p>\nLeider basieren einige dieser Aussagen auf Annahmen, die nur unter bestimmten Bedingungen zutreffen, w\u00e4hrend andere einfach falsch sind.<\/p>\n<p>Dieses Buch lehrt Sie, \u00fcber brokerbasierte Messaging-Systeme nachzudenken, indem es zwei beliebte Broker-Technologien vergleicht: Apache ActiveMQ und Apache Kafka. Es werden Anwendungsbeispiele und Entwicklungsmotive dargestellt, die dazu f\u00fchrten, dass ihre Entwickler v\u00f6llig unterschiedliche Ans\u00e4tze im Bereich des Message Brokerings verfolgten. Wir betrachten diese Technologien von Grund auf und heben den Einfluss verschiedener Designoptionen auf diesem Weg hervor. Sie werden ein tiefes Verst\u00e4ndnis f\u00fcr beide Produkte erlangen, begreifen, wie sie verwendet werden sollten und nicht sollten, und lernen, worauf Sie bei der Betrachtung 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 dient es?<\/h3>\n<p>\nDamit zwei Anwendungen miteinander kommunizieren k\u00f6nnen, m\u00fcssen sie zun\u00e4chst eine Schnittstelle definieren. Die Festlegung dieser Schnittstelle umfasst die Auswahl eines Transports oder Protokolls, wie z. B. HTTP, MQTT oder SMTP, sowie die Abstimmung der Nachrichtenformate, die zwischen den Systemen ausgetauscht werden. Dies kann ein strenger Prozess sein, wie die Definition eines XML-Schemas mit Anforderungen an die Payload des Nachrichteninhalts, oder deutlich informeller, etwa ein Abkommen zwischen zwei Entwicklern, dass ein bestimmter Teil der HTTP-Anfrage eine Kunden-ID enthalten wird.<\/p>\n<p>Sofern das Nachrichtenformat und die Reihenfolge des Versands zwischen den Systemen abgestimmt sind, k\u00f6nnen sie miteinander interagieren, ohne sich um die Implementierung des jeweils anderen Systems k\u00fcmmern zu m\u00fcssen. Die internen Abl\u00e4ufe dieser Systeme, wie die verwendete Programmiersprache oder das verwendete 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 voneinander entkoppelt.<\/p>\n<p>Messaging-Systeme sehen in der Regel die Teilnahme eines Vermittlers zwischen zwei Systemen vor, die f\u00fcr die weitere Trennung (Aufteilung) des Senders von dem Empf\u00e4nger oder den Empf\u00e4ngern interagieren. Dabei erm\u00f6glicht das Messaging-System dem Sender, eine Nachricht zu senden, ohne zu wissen, wo sich der Empf\u00e4nger befindet, ob er aktiv ist oder wie viele Exemplare es gibt.<\/p>\n<p>Betrachten wir einige Analogien zu den Arten von Problemen, die ein Messaging-System l\u00f6st, und f\u00fchren wir einige grundlegende Begriffe ein.<\/p>\n<h4>Point-to-Point<\/h4>\n<p><\/p>\n<blockquote><p>Alexandra geht zur Post, um Adam ein Paket zu schicken. Sie geht zum Schalter und \u00fcbergibt dem Mitarbeiter das Paket. Der Mitarbeiter nimmt das Paket entgegen und gibt Alexandra eine Quittung. Adam muss nicht zu Hause sein, wenn das Paket versendet wird. Alexandra ist sich sicher, dass das Paket irgendwann in der Zukunft bei Adam ankommt und kann weiterhin ihren Angelegenheiten nachgehen. Sp\u00e4ter erh\u00e4lt Adam das Paket.<\/p><\/blockquote>\n<p>Das ist ein Beispiel f\u00fcr ein Messaging-Modell <i>Punkt-zu-Punkt<\/i>. In dieser Zustellung fungiert das Postamt als Verteilmechanismus f\u00fcr Pakete, der garantiert, dass jedes Paket nur einmal zugestellt wird. Die Nutzung des Postamts trennt den Akt des Versendens eines Pakets von der Zustellung.<br \/>\nIn klassischen Nachrichtensystemen wird das \"Point-to-Point\"-Modell durch <i>Warteschlangen<\/i>realisieren. Eine Warteschlange fungiert als FIFO-Puffer (First In, First Out), auf den sich ein oder mehrere Verbraucher anmelden k\u00f6nnen. Jede Nachricht wird nur <i>einem der angemeldeten Verbraucher<\/i>zugestellt. Warteschlangen versuchen in der Regel, die Nachrichten fair unter den Verbrauchern zu verteilen. Nur ein Verbraucher erh\u00e4lt die betreffende Nachricht.<\/p>\n<p>Auf Warteschlangen wird der Begriff \"zuverl\u00e4ssig\" angewendet. <i>Zuverl\u00e4ssigkeit <\/i> Das ist eine Eigenschaft des Dienstes, die garantiert, dass das Nachrichtensystem Nachrichten speichert, wenn keine aktiven Abonnenten vorhanden sind, bis der Verbraucher sich zur Zustellung von Nachrichten bei der Warteschlange anmeldet.<\/p>\n<p>Zuverl\u00e4ssigkeit wird oft mit <i>Persistenz verwechselt.<\/i> Obwohl diese beiden Begriffe austauschbar sind, erf\u00fcllen sie unterschiedliche Funktionen. Persistenz bestimmt, ob eine Nachricht von einem Message Broker in einem Speicher zwischen dem Empfang und der Zustellung an den Verbraucher protokolliert wird. Nachrichten, die in eine Warteschlange gesendet werden, k\u00f6nnen persistent sein oder auch nicht.<br \/>\nPoint-to-Point Messaging wird genutzt, wenn der Anwendungsfall eine einmalige Interaktion mit der Nachricht erfordert. Ein Beispiel daf\u00fcr ist das Einzahlen von Geld auf ein Konto oder das Aufgeben einer Bestellung f\u00fcr die Lieferung. Sp\u00e4ter werden wir er\u00f6rtern, warum ein Messaging-System alleine keine eindeutige Lieferung garantieren kann 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. W\u00e4hrend sie mit der Konferenz verbunden ist, h\u00f6rt sie alles, was der Sprecher sagt, zusammen mit den anderen Teilnehmern des Anrufs. Wenn sie sich abmeldet, verpasst sie, was gesagt wird. Beim erneuten Verbinden h\u00f6rt sie weiter, was gesagt wird.<\/p><\/blockquote>\n<p> Das ist ein Beispiel f\u00fcr ein Messaging-Modell <i>Ver\u00f6ffentlichung-Abonnement<\/i>. Konferenzschaltungen fungieren als Broadcast-Mechanismus. Die sprechende Person muss sich keine Gedanken dar\u00fcber machen, wie viele Leute derzeit am Anruf teilnehmen \u2013 das System gew\u00e4hrleistet, dass jeder, der sich anschlie\u00dft, h\u00f6rt, was gesagt wird.<br \/>\nIn klassischen Nachrichtenaustauschsystemen wird das \u201ePublish-Subscribe\u201c-Modell \u00fcber <i>Topics<\/i>realisierte. Ein Topic bietet eine \u00e4hnliche M\u00f6glichkeit zum Broadcasten wie der Mechanismus der Konferenzschaltung. Wenn eine Nachricht an ein Topic gesendet wird, wird sie <i>an alle abonnierenden Benutzer verteilt.<\/i>.<\/p>\n<p>Topics sind in der Regel <i>nicht zuverl\u00e4ssig (nondurable).<\/i>Wie ein Zuh\u00f6rer, der nicht h\u00f6rt, was bei einer Konferenzschaltung gesagt wird, wenn er sich trennt, verpassen die Abonnenten eines Topics alle Nachrichten, die w\u00e4hrend ihrer Offline-Zeit gesendet werden. Aus diesem Grund kann man sagen, dass Topics eine Zustellungsgarantie bieten, <i>nicht mehr als einmal <\/i>f\u00fcr jeden Verbraucher.<\/p>\n<p>Messaging types like 'publish-subscribe' are typically used for informational messages, where losing one message isn't crucial. For instance, a topic might transmit temperature readings from a group of sensors once every second. A system that is interested in the current temperature and subscribes to the topic won't worry if it misses a message\u2014another will arrive shortly.<\/p>\n<h4>Hybride Modelle<\/h4>\n<p><\/p>\n<blockquote><p>Die Website des Shops platziert Bestellnachrichten in eine 'Nachrichtenschlange'. Der Hauptverbraucher dieser Nachrichten ist das Ausf\u00fchrungssystem. Zudem muss das Auditsystem Kopien dieser Bestellnachrichten f\u00fcr die sp\u00e4tere Nachverfolgung haben. Beide Systeme d\u00fcrfen Nachrichten nicht verlieren, selbst wenn sie f\u00fcr eine gewisse Zeit nicht verf\u00fcgbar sind. Die Website sollte nichts \u00fcber die anderen Systeme wissen.<\/p><\/blockquote>\n<p> Anwendungsszenarien erfordern h\u00e4ufig eine Kombination der Nachrichten\u00fcbertragungsmodelle \"Publish-Subscribe\" und \"Point-to-Point\", zum Beispiel wenn mehrere Systeme eine Kopie einer Nachricht ben\u00f6tigen und sowohl Zuverl\u00e4ssigkeit als auch Persistenz zur Vermeidung von Nachrichtenverlust erforderlich sind.<\/p>\n<p>In solchen F\u00e4llen ist ein Ziel (destination) erforderlich (ein allgemeiner Begriff f\u00fcr Warteschlangen und Themen), das die Nachrichten haupts\u00e4chlich wie ein Thema verteilt, sodass jede Nachricht an ein einzelnes System gesendet wird, das an diesen Nachrichten interessiert ist. Zudem kann jedes System mehrere Verbraucher bestimmen, die die eingehenden Nachrichten empfangen, was eher wie eine Warteschlange wirkt. Die Leseart in diesem Fall ist - <i>einmal f\u00fcr jede interessierte Partei<\/i>. Diese hybriden Adressaten erfordern oft Zuverl\u00e4ssigkeit (durability), sodass, wenn ein Verbraucher getrennt ist, die zu diesem Zeitpunkt gesendeten Nachrichten nach der Wiederverbindung des Verbrauchers empfangen werden.<\/p>\n<p>Hybride Modelle sind nicht neu und k\u00f6nnen in den meisten Nachrichtenaustauschsystemen eingesetzt werden, einschlie\u00dflich ActiveMQ (\u00fcber virtuelle oder zusammengesetzte Adressen, die Themen und Warteschlangen kombinieren) sowie Kafka (implizit, als grundlegende Eigenschaft des Designs ihres Adressaten).<\/p>\n<p>Jetzt, da wir einige grundlegende Terminologien und ein Verst\u00e4ndnis daf\u00fcr haben, wof\u00fcr uns ein Nachrichtenaustauschsystem n\u00fctzlich sein k\u00f6nnte, lassen Sie uns zu den Details \u00fcbergehen.<\/p>\n<p><b> \u00dcbersetzung abgeschlossen: <noindex><a rel=\"nofollow\" href=\"http:\/\/tele.gg\/middle_java\">tele.gg\/middle_java<\/a><\/noindex><\/b><\/p>\n<p>Der n\u00e4chste \u00fcbersetzte Abschnitt: <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 4.9.10 - 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 Brokers&quot;, \u0430\u0432\u0442\u043e\u0440: Jakub Korab, \u0438\u0437\u0434\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e: O&#039;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: &quot;\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\" \/>\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) 4.9.10\" \/>\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 Brokers&quot;, \u0430\u0432\u0442\u043e\u0440: Jakub Korab, \u0438\u0437\u0434\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e: O&#039;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: &quot;\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\" \/>\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\udd47Verst\u00e4ndnis von Nachrichtenbrokern. Untersuchung der Mechanik des Nachrichtenaustauschs durch ActiveMQ und Kafka. Kapitel 1 | ProHoster","description":"Hallo zusammen! Ich habe begonnen, ein kleines Buch zu \u00fcbersetzen: \"Understanding Message Brokers\", Autor: Jakub Korab, Verlag: O'Reilly Media, Inc., Erscheinungsdatum: Juni 2017, ISBN: 9781492049296. Aus der Einleitung des Buches: \"\u2026 Dieses Buch wird Ihnen beibringen, \u00fcber Nachrichtenaustauschsysteme bei Brokern nachzudenken, indem es zwei beliebte Broker-Technologien vergleicht und gegen\u00fcberstellt: Apache ActiveMQ und Apache Kafka. Beispielanwendungen werden vorgestellt.","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 Brokers&quot;, \u0430\u0432\u0442\u043e\u0440: Jakub Korab, \u0438\u0437\u0434\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e: O'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: &quot;\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","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"},"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}]}}