Что такое gRPC
Высокопроизводительный RPC-фреймворк
gRPC — высокопроизводительный фреймворк удалённого вызова процедур (RPC), разработанный Google для межсервисной коммуникации.
Основные особенности
- Protocol Buffers — бинарный формат сериализации данных
- HTTP/2 — мультиплексирование, сжатие заголовков
- Streaming — поддержка потоковой передачи данных
- Кодогенерация — автоматическая генерация клиентов и серверов
Типы коммуникации
- Unary — один запрос, один ответ
- Server streaming — один запрос, поток ответов
- Client streaming — поток запросов, один ответ
- Bidirectional streaming — двусторонний поток
Преимущества
- Производительность — до 10x быстрее REST/JSON
- Типизация — строгие контракты через .proto файлы
- Многоязычность — поддержка 10+ языков программирования
Применение
Идеально для микросервисной архитектуры, real-time приложений и систем с высокими требованиями к производительности.