uvelichitel
@uvelichitel
habrahabr.ru/users/uvelichitel

Почему gRPC использует в качестве транспорта HTTP/2, а не TCP или raw unix sockets?

gRPC новомодный фреймворк от google для коммуникаций в микросервисной архитектуре. Для сериализации использует protobuff, в качестве транспорта HTTP/2. Основной вопрос в заголовке. Если транспортировать HTTP, то зачем protobuf, что не так с JSON который легко переваривает браузерный JS в рамках простого AJAX или websockets(для gRPC поддержка браузера не реализована). Если protobuff, то зачем транспорт такого высокого уровня, почему не TCP или sockets.
Попутно
  1. Если кто пользовал отпишитесь об ощущениях. Скорость, ресурсоемкость, удобство разработки?
  2. Чем лучше/хуже ApacheThreaft, zeroMQ?
  3. Почему авторы напирают на mobile, чем gRPC так хорош для mobile разработки?
  • Вопрос задан
  • 2561 просмотр
Решения вопроса 1
miraage
@miraage
Старый прогер
На главной странице же написано


HTTP/2
Building on the HTTP/2 standard brings many capabilities such as bidirectional streaming, flow control, header compression, multiplexing requests over a single TCP connection and more.

These features save battery life and data usage on mobile devices while speeding up services and web applications running in the cloud.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы