Vorwort

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Heutzutage werden Softwareanwendungen oft über Computernetzwerke mit Hilfe von Interprozess-Kommunikationstechnologien miteinander verbunden. gRPC ist ein moderner Interprozess-Kommunikationsstil, der auf hochleistungsfähigen RPCs (Remote Procedure Calls) für den Aufbau verteilter Anwendungen und Microservices basiert. Mit dem Aufkommen von Microservices und nativen Cloud-Anwendungen nimmt die Nutzung von gRPC exponentiell zu.

Warum haben wir dieses Buch geschrieben?

Mit der zunehmenden Verbreitung von gRPC waren wir der Meinung, dass Entwickler ein umfassendes Buch über gRPC brauchen, ein Buch, das du als ultimatives Nachschlagewerk in jeder Phase des Entwicklungszyklus deiner gRPC-Anwendungen nutzen kannst. Es gibt viele Ressourcen und Codebeispiele für gRPC (Dokumentationen, Blogs, Artikel, Konferenzvorträge und so weiter), aber es gibt keine einzige Ressource, die du für die Entwicklung von gRPC-Anwendungen verwenden kannst. Außerdem gibt es keine Ressourcen zu den Interna des gRPC-Protokolls und wie es unter der Haube funktioniert.

Wir haben dieses Buch geschrieben, um diese Herausforderungen zu meistern und dir ein umfassendes Verständnis der Grundlagen von gRPC zu vermitteln. Du erfährst, wie sich gRPC von herkömmlichen Interprozess-Kommunikationstechnologien unterscheidet, welche Kommunikationsmuster es in der Praxis gibt, wie du gRPC-Anwendungen mit Go und Java erstellst, wie es unter der Haube funktioniert, wie du gRPC-Anwendungen in der Produktion ausführst und wie gRPC mit Kubernetes und dem Rest des Ökosystems zusammenarbeitet.

Für wen ist dieses Buch?

Das Buch ist vor allem für Entwickler relevant, die verteilte Anwendungen und Microservices mit verschiedenen Technologien für die Kommunikation zwischen Prozessen entwickeln. Wenn es darum geht, solche Anwendungen und Dienste zu entwickeln, müssen Entwickler die Grundlagen von gRPC kennenlernen, wissen, wann und wie sie es für die Kommunikation zwischen den Diensten einsetzen können und welche bewährten Methoden es für den Betrieb von gRPC-Diensten in der Produktion gibt. Auch Architekten, die Microservices oder eine native Cloud-Architektur einführen und entwerfen, wie die Dienste kommunizieren sollen, werden von dem Buch profitieren, denn es vergleicht und kontrastiert gRPC mit anderen Technologien und gibt Richtlinien, wann es eingesetzt werden sollte und wann nicht.

Wir gehen davon aus, dass sowohl Entwickler als auch Architekten ein Grundverständnis für die Grundlagen des verteilten Computings haben, wie z.B. Techniken zur Kommunikation zwischen Prozessen, serviceorientierte Architekturen (SOA) und Microservices.

Wie dieses Buch organisiert ist

Das Buch ist so geschrieben, dass die theoretischen Konzepte anhand von realen Anwendungsfällen erklärt werden. Im gesamten Buch haben wir ausgiebig Code-Beispiele mit Go und Java verwendet, um den Lesern praktische Erfahrungen mit den einzelnen Konzepten zu vermitteln, die sie lernen. Wir haben das Buch in acht Kapitel unterteilt.

Kapitel 1, Einführung in gRPC

Dieses Kapitel vermittelt dir ein grundlegendes Verständnis der gRPC-Grundlagen und vergleicht sie mit ähnlichen Formen der prozessübergreifenden Kommunikation wie REST, GraphQL und anderen RPC-Technologien.

Kapitel 2, Erste Schritte mit gRPC

In diesem Kapitel sammelst du erste praktische Erfahrungen mit der Erstellung einer vollständigen gRPC-Anwendung mit Go oder Java.

Kapitel 3, gRPC-Kommunikationsmuster

In diesem Kapitel wirst du gRPC-Kommunikationsmuster anhand von Beispielen aus der Praxis erkunden.

Kapitel 4, gRPC: Unter der Haube

Wenn du ein fortgeschrittener gRPC-Benutzer bist und dich für die Interna von gRPC interessierst, ist dies das richtige Kapitel, um sie zu lernen. In diesem Kapitel lernst du jeden Schritt der gRPC-Kommunikation zwischen Server und Client und wie sie über das Netzwerk funktioniert.

Kapitel 5, gRPC: Mehr als nur die Grundlagen

In diesem Kapitel lernst du einige der wichtigsten fortgeschrittenen Funktionen von gRPC kennen, wie z.B. Interceptoren, Deadlines, Metadaten, Multiplexing, Lastausgleich und so weiter.

Kapitel 6, Gesicherter gRPC

In diesem Kapitel erfährst du, wie du Kommunikationskanäle absicherst und wie wir den Zugang von Benutzern zu gRPC-Anwendungen authentifizieren und kontrollieren.

Kapitel 7, Ausführen von gRPC in der Produktion

Dieses Kapitel führt dich durch den gesamten Entwicklungslebenszyklus von gRPC-Anwendungen. Wir behandeln das Testen von gRPC-Anwendungen, die Integration mit CI/CD, das Deployment und den Betrieb auf Docker und Kubernetes sowie die Beobachtung von gRPC-Anwendungen.

Kapitel 8, Das gRPC-Ökosystem

In diesem Kapitel besprechen wir einige der hilfreichen Komponenten, die um gRPC herum gebaut wurden. Die meisten dieser Projekte sind nützlich, wenn du reale Anwendungen mit gRPC erstellst.

Code-Beispiele verwenden

Alle Code-Beispiele und ergänzenden Materialien zu diesem Buch stehen unterhttps://grpc-up-and-running.github.io zum Download bereit. Wir empfehlen dir dringend, die Beispiele in diesem Repository auszuprobieren, während du das Buch liest. So kannst du die Konzepte, die du lernst, besser verstehen.

Diese Codebeispiele werden mit den neuesten Versionen der Bibliotheken, Abhängigkeiten und Entwicklungswerkzeuge gepflegt und auf dem neuesten Stand gehalten. Gelegentlich kann es vorkommen, dass die Codebeispiele im Text und die Beispiele im Repository leicht voneinander abweichen. Wir empfehlen dir, einen Pull Request (PR) zu senden, wenn du auf Probleme oder Verbesserungen im Zusammenhang mit den Codebeispielen stößt.

Du darfst den Beispielcode in diesem Buch in deinen eigenen Programmen und Dokumentationen 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 eine Genehmigung erforderlich.

Wir freuen uns über eine Namensnennung, verlangen sie aber in der Regel nicht. Eine Quellenangabe umfasst normalerweise den Titel, den Autor, den Verlag und die ISBN. Zum Beispiel:"gRPC: Up and Running " von Kasun Indrasiri und Danesh Kuruppu (O'Reilly). Copyright 2020 Kasun Indrasiri und Danesh Kuruppu, 978-1-492-05833-5."

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 kontaktieren

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.

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, Konferenzen 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 findest 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/gRPC_Up_and_Running aufrufen .

Schreib eine E-Mail an , um Kommentare oder technische Fragen zu diesem Buch zu stellen.

Weitere Informationen zu unseren Büchern, Kursen, Konferenzen und Neuigkeiten findest du auf unserer Website unter http://www.oreilly.com.

Finde uns auf Facebook: http://facebook.com/oreilly

Folge uns auf Twitter: http://twitter.com/oreillymedia

Schau uns auf YouTube: http://www.youtube.com/oreillymedia

Danksagungen

Unser Dank geht an die technischen Prüfer dieses Buches, Julien Andrieux, Tim Raymond und Ryan Michela. Außerdem möchten wir uns bei unserer Entwicklungsredakteurin Melissa Potter für ihre Anleitung und Unterstützung und bei unserem Akquisitionsredakteur Ryan Shaw für all die gewährte Unterstützung bedanken. Nicht zuletzt danken wir der gesamten gRPC-Community für die Schaffung eines so großartigen Open-Source-Projekts.

Get gRPC: Auf und davon 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.