Java version of general RPC (Remote Procedure Call) framework over HTTP/2.
Links
What is gRPC?
In gRPC
a client application can directly call methods on a server application on a different machine as if it was a local object, making it easier for you to create distributed applications and services. As in many RPC systems, gRPC
is based around the idea of defining a service, specifying the methods that can be called remotely with their parameters and return types. On the server side, the server implements this interface and runs a gRPC
server to handle client calls. On the client side, the client has a stub (referred to as just client in some languages) that provides the same methods as the server.
By default gRPC uses protocol buffers
, Google’s mature open source mechanism for serializing structured data (although it can be used with other data formats such as JSON). As you’ll see in our example below, you define gRPC services using proto files, with method parameters and return types specified as protocol buffer message types. You can find out lots more about protocol buffers in the Protocol Buffers documentation.