gRPC logo

gRPC

A high performance, open-source universal RPC framework

What is 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...
gRPC is a tool in the Remote Procedure Call (RPC) category of a tech stack.
gRPC is an open source tool with 41.7K GitHub stars and 10.5K GitHub forks. Here’s a link to gRPC's open source repository on GitHub

Who uses gRPC?

Companies
270 companies reportedly use gRPC in their tech stacks, including Slack, medium.com, and Alibaba Travels.

Developers
930 developers on StackShare have stated that they use gRPC.

gRPC Integrations

JavaScript, Java, Swift, Kotlin, and C++ are some of the popular tools that integrate with gRPC. Here's a list of all 29 tools that integrate with gRPC.
Pros of gRPC
24
Higth performance
15
The future of API
13
Easy setup
5
Contract-based
4
Polyglot
2
Garbage
Decisions about gRPC

Here are some stack decisions, common use cases and reviews by companies and developers who chose gRPC in their tech stack.

Dylan Krupp
Needs advice
on
GraphQLGraphQL
and
gRPCgRPC

I used GraphQL extensively at a previous employer a few years ago and really appreciated the data-driven schema etc alongside the many other benefits it provided. At that time, it seemed like it was set to replace RESTful APIs and many companies were adopting it.

However, as of late, it seems like interest has been waning for GraphQL as opposed to increasing as I had assumed it would. Am I missing something here? What is the current perspective regarding this technology?

Currently, I'm working with gRPC and was curious as to the state of everything now.

See more
Needs advice
on
gRPCgRPC
and
SignalRSignalR

We need to interact from several different Web applications (remote) to a client-side application (.exe in .NET Framework, Windows.Console under our controlled environment). From the web applications, we need to send and receive data and invoke methods to client-side .exe on javascript events like users onclick. SignalR is one of the .Net alternatives to do that, but it adds overhead for what we need. Is it better to add SignalR at both client-side application and remote web application, or use gRPC as it sounds lightest and is multilingual?

SignalR or gRPC are always sending and receiving data on the client-side (from browser to .exe and back to browser). And web application is used for graphical visualization of data to the user. There is no need for local .exe to send or interact with remote web API. Which architecture or framework do you suggest to use in this case?

See more
Needs advice
on
gRPCgRPC

What to use when and what is the main difference between gRPC or WebSockets. Is Websockets using HTTP 1.0, then how it is bidirectional?

See more

Blog Posts

Jobs that mention gRPC as a desired skillset

See all jobs

gRPC's Features

  • Simple service definition
  • Works across languages and platforms
  • Start quickly and scale
  • Works across languages and platforms
  • Bi-directional streaming and integrated auth

gRPC Alternatives & Comparisons

What are some alternatives to gRPC?
GraphQL
GraphQL is a data query language and runtime designed and used at Facebook to request and deliver data to mobile and web apps since 2012.
RabbitMQ
RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.
Kafka
Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with a unique design.
REST
An architectural style for developing web services. A distributed system framework that uses Web protocols and technologies.
MQTT
It was designed as an extremely lightweight publish/subscribe messaging transport. It is useful for connections with remote locations where a small code footprint is required and/or network bandwidth is at a premium.
See all alternatives

gRPC's Followers
1350 developers follow gRPC to keep up with related blogs and decisions.