RPC (Remote Procedure Call) – это мощная платформа для работы с удаленными вызовами процедур. RPC позволяют вам писать код так, как будто он будет выполняться на локальном компьютере, хотя на самом деле вызов происходит между двумя разными машинами. Другими словами, RPC обеспечивает связь между удаленными сервисами, когда сервисы развертываются на разных серверах в рамках микросервисной архитектуры. С точки зрения пользователя это выглядит как локальный вызов функции. Что же происходит под капотом gRPC: Шаг 1. Клиент нажимает на кнопку «Оплатить» в интернет-магазине, выполняется вызов REST. Тело запроса обычно имеет формат JSON. Шаги 2–4. Сервис заказов (клиент gRPC) получает вызов REST, преобразует его и выполняет вызов RPC в платежный сервис. gPRC кодирует клиентский запрос в двоичный формат (данный механизм позволяют значительно повысить производительность при передачи по сети в сравнении с REST API, который просто отправляет строки JSON в виде байтов, по некоторым данным из за это