gRPC — опенсорсный фреймворк для удаленного вызова процедур.
При задействовании RPC происходит коммуникация между клиентом и сервером, для которой используется не HTTP-вызов, а вызов функции. Клиент вызывает удаленную процедуру, сериализует параметры и дополнительную информацию в сообщении, после чего шлет сообщение на сервер. Приняв данные, сервер производит их десериализацию, выполняет запрошенную операцию и шлет результат обратно клиенту. Такие объекты как stub сервера и stub клиента берут на себя функцию сериализации и десериализации параметров.