Vorwort
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Das größte Kompliment, das du einem Autor eines Fachbuchs machen kannst, ist: "Das ist das Buch, das ich gerne gehabt hätte, als ich mit diesem Thema angefangen habe." Das ist das Ziel, das wir uns gesetzt haben, als wir mit dem Schreiben dieses Buches begannen. Wir blickten zurück auf unsere Erfahrungen beim Schreiben von Kafka, beim Betrieb von Kafka in der Produktion und bei der Unterstützung vieler Unternehmen bei der Nutzung von Kafka zum Aufbau von Softwarearchitekturen und zur Verwaltung ihrer Datenpipelines und fragten uns: "Was sind die nützlichsten Dinge, die wir neuen Benutzern vermitteln können, um sie vom Anfänger zum Experten zu machen?" Dieses Buch spiegelt die Arbeit wider, die wir jeden Tag tun: Apache Kafka betreiben und anderen helfen, es optimal zu nutzen.
Wir haben aufgeführt, was du unserer Meinung nach wissen musst, um Apache Kafka erfolgreich in der Produktion einzusetzen und robuste und leistungsfähige Anwendungen darauf aufzubauen. Wir haben die beliebtesten Anwendungsfälle hervorgehoben: Nachrichtenbusse für ereignisgesteuerte Microservices, Stream-Processing-Anwendungen und groß angelegte Datenpipelines. Wir haben uns außerdem darauf konzentriert, das Buch so allgemein und umfassend zu gestalten, dass es für jeden nützlich ist, der Kafka einsetzt, unabhängig vom Anwendungsfall oder der Architektur. Wir behandeln praktische Themen wie die Installation und Konfiguration von Kafka und die Nutzung der Kafka-APIs. Außerdem widmen wir uns den Designprinzipien und Zuverlässigkeitsgarantien von Kafka und gehen auf einige interessante Details der Architektur von Kafka ein: das Replikationsprotokoll, den Controller und die Speicherung. Wir sind der Meinung, dass das Wissen über das Design und die Interna von Kafka nicht nur eine unterhaltsame Lektüre für alle ist, die sich für verteilte Systeme interessieren, sondern auch unglaublich nützlich für diejenigen, die fundierte Entscheidungen treffen wollen, wenn sie Kafka in der Produktion einsetzen und Anwendungen entwickeln, die Kafka nutzen. Je besser du verstehst, wie Kafka funktioniert, desto besser kannst du fundierte Entscheidungen über die vielen Kompromisse treffen, die bei der Entwicklung eine Rolle spielen.
Eines der Probleme bei der Softwareentwicklung ist, dass es immer mehr als einen Weg gibt, etwas zu tun. Plattformen wie Apache Kafka bieten viel Flexibilität, was für Experten großartig ist, für Anfänger aber eine steile Lernkurve bedeutet. Apache Kafka sagt dir oft, wie du eine Funktion nutzen kannst, aber nicht, warum du sie nutzen solltest oder nicht. Wann immer es möglich ist, versuchen wir zu erklären, welche Möglichkeiten es gibt, welcheKompromisse man eingehenmuss und wann man die verschiedenen Optionen von Apache Kafka nutzen sollte und wann nicht.
Wer sollte dieses Buch lesen?
Kafka: The Definitive Guide wurde für Softwareentwickler geschrieben, die Anwendungen entwickeln, die die APIs von Kafka nutzen, sowie für Produktionsingenieure (auch SREs, DevOps oder Sysadmins genannt), die Kafka in der Produktion installieren, konfigurieren, optimieren und überwachen. Wir haben das Buch auch mit Blick auf Datenarchitekten und Dateningenieure geschrieben, die für die Entwicklung und den Aufbau der gesamten Dateninfrastruktur eines Unternehmens verantwortlich sind. Einige der Kapitel, insbesondere die Kapitel 3, 4 und 14, richten sich an Java-Entwickler. In diesen Kapiteln wird vorausgesetzt, dass der Leser mit den Grundlagen der Programmiersprache Java vertraut ist, einschließlich Themen wie Ausnahmebehandlung und Gleichzeitigkeit. Andere Kapitel, vor allem die Kapitel 2, 10, 12 und 13, setzen voraus, dass der Leser einige Erfahrung mit Linux hat und mit der Speicherung und Netzwerkkonfiguration unter Linux vertraut ist. Der Rest des Buches behandelt Kafka und Software-Architekturen in allgemeinerer Form und setzt keine besonderen Kenntnisse voraus.
Eine andere Kategorie von Personen, für die dieses Buch interessant sein könnte, sind Manager und Architekten, die nicht direkt mit Kafka arbeiten, sondern mit den Leuten, die es tun. Es ist genauso wichtig, dass sie die Garantien verstehen, die Kafka bietet, und die Kompromisse, die ihre Angestellten und Mitarbeiter beim Aufbau von Kafka-basierten Systemen eingehen müssen. Das Buch kann Managern Munition liefern, die ihre Mitarbeiter in Apache Kafka schulen oder sicherstellen wollen, dass ihre Teams wissen, was sie wissen müssen.
In diesem Buch verwendete Konventionen
In diesem Buch werden die folgenden typografischen Konventionen verwendet:
- Kursiv
-
Weist auf neue Begriffe, URLs, E-Mail-Adressen, Dateinamen und Dateierweiterungen hin.
Constant width
-
Wird für Programmlistings sowie innerhalb von Absätzen verwendet, um auf Programmelemente wie Variablen- oder Funktionsnamen, Datenbanken, Datentypen, Umgebungsvariablen, Anweisungen und Schlüsselwörter hinzuweisen.
Constant width bold
-
Zeigt Befehle oder anderen Text an, der vom Benutzer wortwörtlich eingetippt werden sollte.
Constant width italic
-
Zeigt Text an, der durch vom Benutzer eingegebene Werte oder durch kontextabhängige Werte ersetzt werden soll.
Tipp
Dieses Element steht für einen Tipp oder eine Anregung.
Hinweis
Dieses Element steht für einen allgemeinen Hinweis.
Warnung
Dieses Element weist auf eine Warnung oder einen Warnhinweis hin.
Code-Beispiele verwenden
Wenn du eine technische Frage oder ein Problem mit den Codebeispielen hast, sende bitte eine E-Mail an bookquestions@oreilly.com.
Dieses Buch soll dir helfen, deine Arbeit zu erledigen. Wenn in diesem Buch Beispielcode angeboten wird, darfst du ihn in deinen Programmen und deiner Dokumentation verwenden. Du musst uns nicht um Erlaubnis fragen, es sei denn, du reproduzierst einen großen Teil des Codes. Wenn du zum Beispiel ein Programm schreibst, das mehrere Teile des Codes aus diesem Buch verwendet, brauchst du keine Erlaubnis. Der Verkauf oder die Verbreitung von Beispielen aus O'Reilly-Büchern erfordert jedoch eine Genehmigung. Die Beantwortung einer Frage mit einem Zitat aus diesem Buch und einem Beispielcode erfordert keine Genehmigung. Wenn du einen großen Teil des Beispielcodes aus diesem Buch in die Dokumentation deines Produkts aufnimmst, ist eineGenehmigung erforderlich.
Wir schätzen die Namensnennung, verlangen sie aber nicht. Eine Quellenangabe umfasst normalerweise den Titel, den Autor, den Verlag und die ISBN. Zum Beispiel: "Kafka: The Definitive Guide by Gwen Shapira, Todd Palino, Rajini Sivaram, and Krit Petty (O'Reilly). Copyright 2021 Chen Shapira, Todd Palino, Rajini Sivaram, and Krit Petty, 978-1-491-93616-0."
Wenn du der Meinung bist, dass deine Verwendung von Codebeispielen nicht unter die Fair-Use-Regelung oder die oben genannte Erlaubnis fällt, kannst du uns gerne unter permissions@oreilly.com kontaktieren .
O'Reilly Online Learning
Hinweis
Seit mehr als 40 Jahren bietet O'Reilly Media Schulungen, Wissen und Einblicke in Technologie und Wirtschaft, um Unternehmen zum Erfolg zu verhelfen.
Unser einzigartiges Netzwerk von Experten und Innovatoren teilt sein Wissen und seine Erfahrung durch Bücher, Artikel und unsere Online-Lernplattform. Die Online-Lernplattform von O'Reilly bietet dir On-Demand-Zugang zu Live-Trainingskursen, ausführlichen Lernpfaden, interaktiven Programmierumgebungen und einer umfangreichen Text- und Videosammlung von O'Reilly und über 200 anderen Verlagen. Weitere Informationen erhältst du unter http://oreilly.com.
Wie du uns kontaktierst
Bitte richte Kommentare und Fragen zu diesem Buch an den Verlag:
- O'Reilly Media, Inc.
- 1005 Gravenstein Highway Nord
- Sebastopol, CA 95472
- 800-998-9938 (in den Vereinigten Staaten oder Kanada)
- 707-829-0515 (international oder lokal)
- 707-829-0104 (Fax)
Wir haben eine Webseite für dieses Buch, auf der wir Errata, Beispiele und zusätzliche Informationen auflisten. Du kannst diese Seite unter https://oreil.ly/kafka-tdg2 aufrufen .
Schreib eine E-Mail an bookquestions@oreilly.com, um Kommentare oder technische Fragen zu diesem Buch zu stellen.
Neuigkeiten und Informationen über unsere Bücher und Kurse findest du unter http://oreilly.com.
Finde uns auf Facebook: http://facebook.com/oreilly
Folge uns auf Twitter: http://twitter.com/oreillymedia
Schau uns auf YouTube: http://youtube.com/oreillymedia
Danksagungen
Wir möchten uns bei den vielen Mitwirkenden an Apache Kafka und seinem Ökosystem bedanken. Ohne ihre Arbeit würde es dieses Buch nicht geben. Unser besonderer Dank gilt Jay Kreps, Neha Narkhede und Jun Rao sowie ihren Kollegen und der Geschäftsführung von LinkedIn, die Kafka mitentwickelt und der Apache Software Foundation zur Verfügung gestellt haben.
Viele Menschen haben uns wertvolles Feedback zu frühen Versionen des Buches gegeben, und wir sind dankbar für ihre Zeit und ihr Fachwissen: Apurva Mehta, Arseniy Tashoyan, Dylan Scott, Ewen Cheslack-Postava, Grant Henke, Ismael Juma, James Cheng, Jason Gustafson, Jeff Holoman, Joel Koshy, Jonathan Seidman, Jun Rao, Matthias Sax, Michael Noll, Paolo Castagna, und Jesse Anderson. Wir möchten uns auch bei den vielen Leserinnen und Lesern bedanken, die uns auf der Feedback-Seite für die Rough Cuts Kommentare und Feedback hinterlassen haben.
Viele Rezensentinnen und Rezensenten haben uns geholfen und die Qualität dieses Buches stark verbessert, daher sind alle Fehler, die wir hinterlassen haben, unsere eigenen.
Wir möchten unserer O'Reilly-Redakteurin der ersten Ausgabe, Shannon Cutt, für ihre Ermutigung und Geduld danken und dafür, dass sie die Dinge viel besser im Griff hatte als wir. Unsere Redakteure der zweiten Auflage, Jess Haberman und Gary O'Brien, haben uns bei den globalen Herausforderungen auf Kurs gehalten. Die Zusammenarbeit mit O'Reilly ist eine großartige Erfahrung für einen Autor - die Unterstützung, die sie bieten, von Tools bis zu Signierstunden, ist beispiellos. Wir sind allen, die daran beteiligt waren, sehr dankbar und freuen uns über ihre Entscheidung, mit uns zusammenzuarbeiten.
Und wir möchten uns bei unseren Vorgesetzten und Kollegen bedanken, die uns beim Schreiben des Buches unterstützt und ermutigt haben.
Gwen möchte ihrem Ehemann Omer Shapira für seine Unterstützung und Geduld während der vielen Monate danken, die sie damit verbracht hat, ein weiteres Buch zu schreiben; ihren Katzen Luke und Lea dafür, dass sie so kuschelig sind; und ihrem Vater Lior Shapira dafür, dass er ihr beigebracht hat, immer Ja zu sagen, auch wenn es entmutigend erscheint.
Todd wäre ohne seine Frau Marcy und seine Töchter Bella und Kaylee, die immer hinter ihm stehen, aufgeschmissen. Ihre Unterstützung bei all den zusätzlichen Stunden, die er mit Schreiben und Laufen verbringt, um den Kopf frei zu bekommen, hält ihn aufrecht.
Rajini möchte sich bei ihrem Mann Manjunath und ihrem Sohn Tarun für ihre unermüdliche Unterstützung und Ermutigung bedanken, dafür, dass sie Wochenenden damit verbracht haben, die ersten Entwürfe durchzusehen, und dafür, dass sie immer für sie da waren.
Krit teilt seine Liebe und Dankbarkeit mit seiner Frau Cecilia und seinen beiden Kindern Lucas und Lizabeth. Ihre Liebe und Unterstützung machen jeden Tag zu einem Vergnügen, und ohne sie wäre er nicht in der Lage, seinen Leidenschaften nachzugehen. Er möchte auch seiner Mutter Cindy Petty dafür danken, dass sie Krit den Wunsch eingeflößt hat, immer die beste Version seiner selbst zu sein.
Get Kafka: The Definitive Guide, 2. Auflage now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.