Выбор ответа Senior gRPC, SOAP и другие протоколы обновлено
Выбор протокола для внутреннего вызова
Вопрос
Сервис расчёта цены вызывают 20 000 раз в секунду другие внутренние сервисы, задержка критична, все команды пишут на разных языках. Что выбрать?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: gRPC с общим .proto-контрактом. gRPC даёт компактный бинарный формат, HTTP/2 с мультиплексированием, генерацию клиентов под разные языки, дедлайны.
Варианты ответа
- SOAP с WSDL и генерацией клиентов
- REST с XML и схемой XSD
- gRPC с общим .proto-контрактомправильный ответ
- Обмен через общую таблицу в базе
Разбор
gRPC даёт компактный бинарный формат, HTTP/2 с мультиплексированием, генерацию клиентов под разные языки, дедлайны. SOAP и XML тяжелее на сериализацию и трафик. Общая таблица связывает сервисы через базу, это антипаттерн, и задержки синхронного расчёта не решает.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.