KEMBAR78
Introduction to gRPC | PPTX
Introduction to grpc
Chandresh Pancholi
Why gRPC?
“gRPC is a modern open source high performance RPC framework that can run in any environment. It can efficiently
connect services in and across data centers with pluggable support for load balancing, tracing, health checking and
authentication. It is also applicable in last mile of distributed computing to connect devices, mobile applications and
browsers to backend services.”
Supported languages
● Golang
● Java
● Ruby
● Python
● C++
● C#
● Node
● Php
● Android
● Dart
● Web with Envoy proxy
grpc features
● Language Neutral
● IDL based
● Based on http/2
● Supports for Protobuf & JSON
TCP Connection
http/2 features
● Multiplexing multiple requests over a single TCP Connection
● Header Compression
● HOL fixing
● Server push
● Binary protocol
gRPC vs REST
Load Balancing
● Client Side
● Server side
● Service mesh
Who uses gRPC on production
● Google
● Square
● Dropbox
● Netflix
● Ngrok
● CockroachDB
● CoreOS
● Uber
● +many more
Cons
● Load balancing
● No support for browser
● No curls
Questions?

Introduction to gRPC