Синхронный вызов связывает завершение текущего запроса с доступностью и задержкой внешнего сервиса. Он может быть правильным, если ответ действительно необходим сразу.
Что будет, если вызывать внешний сервис синхронно?
Синхронный вызов связывает завершение текущего запроса с доступностью и задержкой внешнего сервиса. Он может быть правильным, если ответ действительно необходим сразу.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Синхронный вызов связывает завершение текущего запроса с доступностью и задержкой внешнего сервиса. Он может быть правильным, если ответ действительно необходим сразу.
Нужны таймауты, ограничение конкурентности и понятное поведение при ошибке. В async event loop блокирующий клиент дополнительно останавливает другие coroutine; асинхронный клиент убирает блокировку потока, но не бизнес-зависимость. Для необязательной работы можно использовать очередь и отложенную обработку, учитывая согласованность.