From 18a911d7cef08fb977df6103e01ecd85b3e12cbd Mon Sep 17 00:00:00 2001 From: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> Date: Fri, 29 Aug 2025 09:04:24 +0000 Subject: [PATCH 1/6] feat: add grpc to glossary Signed-off-by: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> --- content/en/grpc.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 content/en/grpc.md diff --git a/content/en/grpc.md b/content/en/grpc.md new file mode 100644 index 0000000000..2852596867 --- /dev/null +++ b/content/en/grpc.md @@ -0,0 +1,27 @@ +--- +title: gRPC +status: Completed +category: concept +tags: ["methodology", "network", ""] +--- + +gRPC is a modern, open-source, high-performance Remote Procedure Call (RPC) framework that can run in any environment. +It uses HTTP/2 for transport, Protocol Buffers (protobuf) for interface definition and serialization, and provides features such as bi-directional streaming, flow control, header compression, and multiplexing. + +## Problem it solves? + +gRPC addresses common [distributed-systems](./distributed-systems.md) challenges such as inefficient text-based payloads, inconsistent service contracts across languages, limited streaming support, and high-latency multiplexing over HTTP/1.1. +It also reduces boilerplate by generating code from a single source of truth. +In modern [microservices architectures](./microservices-architecture.md), these issues become critical as services frequently communicate with each other. +gRPC offers a consistent, high-performance way for services written in different languages to interoperate, without relying on verbose REST/JSON payloads or inconsistent APIs. + + +## How it helps + +Protocol Buffers provide compact and efficient binary serialization, which reduces payload size and CPU usage. Leveraging HTTP/2 enables multiplexed requests, lower latency, and native support for client, server, and bidirectional streaming. Generated client and server code enforce a single source of truth for service contracts, reducing integration errors and development overhead. + +For **microservices**, gRPC simplifies service-to-service communication and scales well in polyglot environments. +Its **bi-directional streaming** makes it suitable not just for request/response patterns but also for real-time event-driven use cases such as log aggregation, IoT telemetry, or live data pipelines. +While it is not a replacement for [event streaming](./event-streaming.md) platforms like Kafka, gRPC often complements them by providing fast, low-latency RPC communication at the service layer. + +Built-in primitives such as deadlines, metadata, and interceptors support robust, production-grade communication across heterogeneous environments. \ No newline at end of file From 2fdca2c74db416a4b7486c9a5ccb70338627bf4e Mon Sep 17 00:00:00 2001 From: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> Date: Thu, 25 Sep 2025 17:23:17 +0530 Subject: [PATCH 2/6] Update content/en/grpc.md Co-authored-by: Patrice Chalin Signed-off-by: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> --- content/en/grpc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/grpc.md b/content/en/grpc.md index 2852596867..253ea4e39e 100644 --- a/content/en/grpc.md +++ b/content/en/grpc.md @@ -2,7 +2,7 @@ title: gRPC status: Completed category: concept -tags: ["methodology", "network", ""] +tags: [methodology, network] --- gRPC is a modern, open-source, high-performance Remote Procedure Call (RPC) framework that can run in any environment. From d14b467900e86955469a8b6806a9c03f41143224 Mon Sep 17 00:00:00 2001 From: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> Date: Thu, 25 Sep 2025 17:24:24 +0530 Subject: [PATCH 3/6] add link to gRPC website in documentation Added a link to the gRPC website for reference. Signed-off-by: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> --- content/en/grpc.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/en/grpc.md b/content/en/grpc.md index 253ea4e39e..c8fb28de3b 100644 --- a/content/en/grpc.md +++ b/content/en/grpc.md @@ -5,7 +5,7 @@ category: concept tags: [methodology, network] --- -gRPC is a modern, open-source, high-performance Remote Procedure Call (RPC) framework that can run in any environment. +[gRPC](https://grpc.io/) is a modern, open-source, high-performance Remote Procedure Call (RPC) framework that can run in any environment. It uses HTTP/2 for transport, Protocol Buffers (protobuf) for interface definition and serialization, and provides features such as bi-directional streaming, flow control, header compression, and multiplexing. ## Problem it solves? @@ -24,4 +24,4 @@ For **microservices**, gRPC simplifies service-to-service communication and scal Its **bi-directional streaming** makes it suitable not just for request/response patterns but also for real-time event-driven use cases such as log aggregation, IoT telemetry, or live data pipelines. While it is not a replacement for [event streaming](./event-streaming.md) platforms like Kafka, gRPC often complements them by providing fast, low-latency RPC communication at the service layer. -Built-in primitives such as deadlines, metadata, and interceptors support robust, production-grade communication across heterogeneous environments. \ No newline at end of file +Built-in primitives such as deadlines, metadata, and interceptors support robust, production-grade communication across heterogeneous environments. From d692a4463b1dc4a824e7c64d578914c5313c9ef4 Mon Sep 17 00:00:00 2001 From: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> Date: Wed, 12 Nov 2025 12:02:56 +0530 Subject: [PATCH 4/6] Update content/en/grpc.md Co-authored-by: Jihoon Seo <46767780+jihoon-seo@users.noreply.github.com> Signed-off-by: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> --- content/en/grpc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/grpc.md b/content/en/grpc.md index c8fb28de3b..5b3458c357 100644 --- a/content/en/grpc.md +++ b/content/en/grpc.md @@ -10,7 +10,7 @@ It uses HTTP/2 for transport, Protocol Buffers (protobuf) for interface definiti ## Problem it solves? -gRPC addresses common [distributed-systems](./distributed-systems.md) challenges such as inefficient text-based payloads, inconsistent service contracts across languages, limited streaming support, and high-latency multiplexing over HTTP/1.1. +gRPC addresses common [distributed-systems](/distributed-systems/) challenges such as inefficient text-based payloads, inconsistent service contracts across languages, limited streaming support, and high-latency multiplexing over HTTP/1.1. It also reduces boilerplate by generating code from a single source of truth. In modern [microservices architectures](./microservices-architecture.md), these issues become critical as services frequently communicate with each other. gRPC offers a consistent, high-performance way for services written in different languages to interoperate, without relying on verbose REST/JSON payloads or inconsistent APIs. From 30e0f526ec0882b85bf017501d2f3cb412af4734 Mon Sep 17 00:00:00 2001 From: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> Date: Wed, 12 Nov 2025 12:03:09 +0530 Subject: [PATCH 5/6] Update content/en/grpc.md Co-authored-by: Jihoon Seo <46767780+jihoon-seo@users.noreply.github.com> Signed-off-by: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> --- content/en/grpc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/grpc.md b/content/en/grpc.md index 5b3458c357..750b33cdca 100644 --- a/content/en/grpc.md +++ b/content/en/grpc.md @@ -12,7 +12,7 @@ It uses HTTP/2 for transport, Protocol Buffers (protobuf) for interface definiti gRPC addresses common [distributed-systems](/distributed-systems/) challenges such as inefficient text-based payloads, inconsistent service contracts across languages, limited streaming support, and high-latency multiplexing over HTTP/1.1. It also reduces boilerplate by generating code from a single source of truth. -In modern [microservices architectures](./microservices-architecture.md), these issues become critical as services frequently communicate with each other. +In modern [microservices architectures](/microservices-architecture/), these issues become critical as services frequently communicate with each other. gRPC offers a consistent, high-performance way for services written in different languages to interoperate, without relying on verbose REST/JSON payloads or inconsistent APIs. From 938df9e26c69fd473495277376d7db15b10d09f0 Mon Sep 17 00:00:00 2001 From: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> Date: Wed, 12 Nov 2025 12:03:16 +0530 Subject: [PATCH 6/6] Update content/en/grpc.md Co-authored-by: Jihoon Seo <46767780+jihoon-seo@users.noreply.github.com> Signed-off-by: Animesh Pathak <53110238+Sonichigo@users.noreply.github.com> --- content/en/grpc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/grpc.md b/content/en/grpc.md index 750b33cdca..4920823f97 100644 --- a/content/en/grpc.md +++ b/content/en/grpc.md @@ -22,6 +22,6 @@ Protocol Buffers provide compact and efficient binary serialization, which reduc For **microservices**, gRPC simplifies service-to-service communication and scales well in polyglot environments. Its **bi-directional streaming** makes it suitable not just for request/response patterns but also for real-time event-driven use cases such as log aggregation, IoT telemetry, or live data pipelines. -While it is not a replacement for [event streaming](./event-streaming.md) platforms like Kafka, gRPC often complements them by providing fast, low-latency RPC communication at the service layer. +While it is not a replacement for [event streaming](/event-streaming/) platforms like Kafka, gRPC often complements them by providing fast, low-latency RPC communication at the service layer. Built-in primitives such as deadlines, metadata, and interceptors support robust, production-grade communication across heterogeneous environments.