gRPC
gRPC Remote Procedure Calls
A framework for quickly calling and running programs across different computers.
In Simple Terms
gRPC is a system that lets you run a program on another networked computer as if it were right there on your own machine. It sets clear rules in advance for how data is sent and received, making communication smooth and efficient. It's mainly used in systems where multiple servers work together, and in communication between smartphone apps and servers.
Behind the Name
You might assume the "g" in gRPC stands for Google, since Google created it — but officially, each release playfully assigns the letter a different meaning, like "good" or "green". "RPC" stands for "Remote Procedure Call."
Take a Closer Look!
gRPC is a system that lets computers in different locations exchange data and run each other's programs. With it, developers don't have to worry about the complex details of network communication.
You can call functions on another server with almost the same feel as running a program on your own computer.
In gRPC, you write out the shape of your data and the rules for communication in a dedicated file ahead of time. The communication code is then generated automatically from this file, cutting down on development work.
It also converts data into a lightweight "binary format" that's easy for computers to process, rather than plain text, and it can handle multiple communications in parallel at the same time — both of which make for efficient communication.
This approach can be adopted in a development style called "microservices," where a large system is built by combining multiple small, independent programs. Because each program is independent, it's easy to update or add to the system.
It's especially useful in situations that demand lightweight data and fast processing, such as communication between smartphone apps and servers.