Почему современные микросервисы предпочитают gRPC REST
В монолитной архитектуре компоненты взаимодействуют посредством вызовов методов в памяти, которые являются мгновенными и очень надежными. Однако при переходе на архитектуру микросервисов эти компоненты разделяются сетевыми границами. Связь становится внепроцессным сетевым вызовом (межпроцессная связь или IPC).
В течение многих лет REST (передача репрезентативного состояния) через HTTP/1.1 с полезными нагрузками JSON был стандартом по умолчанию для создания веб-API. Хотя REST отлично подходит для общедоступных веб-сервисов и взаимодействия между клиентом и сервером, он создает серьезные узкие места при использовании для высокочастотного внутреннего взаимодействия между сервисами с низкой задержкой.
gRPC
REST
Microservices
Java
Protocol Buffers
HTTP/2
Software Architecture
API Design