gRPC
-
Steuern Sie Ihre Dienste mit OTEL, Jaeger und Prometheus
Lassen Sie uns eine wichtige Frage diskutieren: wie überwachen wir unsere Dienste, wenn etwas schief geht? Auf der einen Seite haben wir Prometheus mit Warnmeldungen und Kibana für Dashboards und andere nützliche Funktionen. Wir wissen auch, wie wir Protokolle sammeln – der ELK-Stack ist unsere Lösung. Allerdings reichen einfache Protokollierungen nicht immer aus: Sie bieten keinen ganzheitlichen Blick auf die Reise einer Anfrage über das gesamte Ökosystem der Komponenten hinweg. Weitere Informationen zu ELK finden Sie hier. Aber was ist,…
-
Tracereihen mit OpenTelemetry und Jaeger
Verfolgung, ein wesentlicher Bestandteil, verfolgt Anfragen durch komplexe Systeme. Diese Sichtbarkeit offenbart Engpässe und Fehler, was zu schnelleren Lösungen führt. In einem früheren Beitrag unserer Reihe über Go-Webdienste untersuchten wir die Bedeutung der Beobachtbarkeit. Heute konzentriert sich dieser Artikel auf die Verfolgung. Jaeger sammelt, speichert und visualisiert Spuren aus verteilten Systemen. Es bietet entscheidende Einsichten in den Anfragefluss zwischen Diensten. Durch die Integration von Jaeger mit OpenTelemetry können Entwickler ihr Verfolgungsverfahren vereinigen, um eine konsequente und umfassende Sichtbarkeit zu gewährleisten.…
-
5 Schritte zur Integration von Istio mit OPA
Authentifizierung und Autorisierung sind bedeutende Teile des Sicherheitspuzzles, die von Cloud-Architekten und DevOps-Ingenieuren gelöst werden müssen. In diesem Blog gehen wir besonders auf die Implementierung von Autorisierung/Zugriffskontrolle ein, d.h. auf die Aktionen ein, die die authentifizierte Entität im Istio-Dienstnetz ausführen kann. Dies hilft, die Infrastruktur zu sichern, indem Handlungen mit böswilligem Inhalt verhindert werden. Autorisierung in einem Dienstnetz kann mit OPA-Politiken definiert werden. OPA ist ein Mechanismus, der DevOps-Mitarbeitern hilft, Autorisierungs-Politiken für Kubernetes-Lasten zu definieren und durchzusetzen. In diesem Beitrag…
-
gRPC gegen REST: Ein Vergleich der Ansätze für die Erstellung von APIs
In der heutigen Text möchte ich genauer auf gRPC und REST eingehen, wahrscheinlich zwei der am häufigsten verwendeten Ansätze zur Erstellung von APIs heutzutage. I will start with a short characteristic of both tools — what they are and what they can offer. Then I will compare them according to seven categories, in my opinion, most crucial for modern-day systems. Die Kategorien sind wie folgt: Unterliegende HTTP-Protokolle Unterstützte Datenformate Datengröße Durchsatz Definitionen Einfachheit der Umsetzung Tooling-Unterstützung Der Warum Wenn Menschen „API“ hören,…
-
Ein einfacher Chat-Server mit gRPC in .Net Core erstellen
In diesem Artikel werden wir eine einfache parallele gRPC-Chat-Server-Anwendung erstellen. Wir werden .NET Core, eine plattformübergreifende, quelloffene und modulare Framework, verwenden, um unsere Chat-Server-Anwendung zu erstellen. Wir werden die folgenden Themen behandeln: A brief introduction to gRPC Einrichten der gRPC-Umgebung und Definieren des Dienstvertrags Implementieren des Chat-Dienstes und Behandeln von Clientanfragen Behandeln mehrerer Clients parallel mithilfe asynchroner Programmierung Übertragen von Chatnachrichten an alle verbundenen Clients im gleichen Raum Am Ende dieses Tutorials werden Sie ein Verständnis dafür haben, wie man…
-
gRPC auf der Client-Seite
Die meisten Kommunikationskomponenten zwischen Systemen, die REST verwenden, serialisieren ihre Nutzlast in JSON. Stand heute, fehlt JSON ein weit verbreiteter Standard für Schema-Validierung: JSON Schema ist nicht verbreitet. Eine standardisierte Schema-Validierung erlaubt es, die Validierung an eine Drittanbieter-Bibliothek zu delegieren und das ist es auch schon. Ohne einen solchen Standard müssen wir zur manuellen Validierung im Code zurückgreifen. Schlimmer noch, müssen wir den Validierungscode synchron mit dem Schema halten. XML bietet Schema-Validierung „out-of-the-box“: Ein XML-Dokument kann eine Grammatik deklarieren, der…
-
Grundlegendes Verständnis von gRPC-Konzepte, Anwendungsfällen und besten Praktiken
Während wir mit der Anwendungsentwicklung vorankommen, gibt es unter vielen Dingen eines, worüber wir weniger besorgt sind: Rechenleistung. Dank der Erscheinung von Cloud-Anbietern machen wir uns weniger Sorgen über die Verwaltung von Rechenzentren. Alles ist innerhalb von Sekunden auf Anfrage verfügbar. Dies führt auch zu einer Vergrößerung der Datenmenge. Große Daten werden mit verschiedenen Medien in einzelnen Anfragen erzeugt und übertragen. Mit der Zunahme der Datenmenge kommen Aktivitäten wie Serialisierung, Deserialisierung und Transportkosten hinzu. Obwohl wir uns nicht um Rechenressourcen…
-
Eine gründliche Untersuchung von REST, gRPC und GraphQL in Web-Projekten
Im dynamischen Umfeld der Webentwicklung spielt die Wahl einer API-Technologie eine entscheidende Rolle für den Erfolg und die Effizienz eines Projekts. In diesem Artikel unternehmen wir eine umfassende Erkundung von drei prominenten Kandidaten: REST, gRPC und GraphQL. Jede dieser Technologien bietet ihre eigenen Stärken und Fähigkeiten, die sich an unterschiedliche Anwendungsfälle und Entwicklungsszenarien anpassen. Was ist REST? REST-API, oder Representational State Transfer Application Programming Interface, ist eine Reihe von Architekturprinzipien und Konventionen zur Erstellung von Webservices. Es bietet eine standardisierte…
-
gRPC gegen REST: Unterschiede, Gemeinsamkeiten und Warum Sie sie einsetzen sollten
Die beliebte Client-Server-Architektur teilt die Kommunikation in zwei Teile auf: einen, der alle schweren Aufgaben übernimmt und Dienste bereitstellt, bekannt als Server, und einen anderen, der diese Dienste genießt, bekannt als Client. Im Allgemeinen sendet der Client in der Client-Server-Kommunikation einfach eine Anforderung, in der er Ressourcen oder Dienste vom Server anfordert, und der Server antwortet auf diese Anforderung. Für die Client-Server-Kommunikation müssen sowohl Clients als auch Server Bibliotheken haben, die das Protokoll, in dem sie kommunizieren, verstehen können. Ein…