gRPC-web в сравнении с REST API¶
gRPC не совместим с браузером, поэтому нелегко сравнить gRPC и REST API в случае приложений, работающих в браузере. gRPC-web решает вопрос с совместимостью, но в чем смысл заменять им REST? Не существует правильного или неправильного ответа, но будет достоверным утверждение, что gRPC-web может стать отличной альтернативой REST API.
На данном этапе можно сказать, что gRPC-web превосходит (в смысле производительности) JSON (не важно, используется ли при этом бинарный транспорт или base-64). Происходит это засчёт сокращения объёма полезной нагрузки, а также ускорения сериализации/десериализации, даже в ситуации отсутствия полной поддержки HTTP/2 на стороне браузеров. Подробности можно прочесть в этом посте.
Выпишем основные преимущества каждой системы:
- gRPC-web обладает лучшей производительностью;
- gRPC-web обладает строгой типизацией (как gRPC);
- Более нет необходимости в документации типа Swagger, так как для этого есть Protobufs;
- REST API распространены значительно шире, и являются стандартом индустрии, с которым ещё долго будет нелегко соревноваться.
Дата создания : 24 июня 2023 г.