… и торт в конце
Сценарий
Вы хотите получить аналогичные данные из нескольких сторонних источников, проверить результаты и вернуть пользователю наиболее релевантный контент.
Проблема
Последовательный вызов каждой конечной точки API занимает слишком много времени.
Подход
Используя обещания, сделайте вызов каждой конечной точке API одновременно — вся работа и ожидание происходят параллельно.
Описанная выше методика была использована при разработке https://app.staycay.io — помощника по путешествиям.
Например, когда пользователь запрашивает «кулинарные мастер-классы» для определенного пункта назначения, функция AWS Lambda Node.js одновременно запрашивает эту информацию у Viator (поставщик мероприятий) И Yelp (локальный Business) API и определяет, какие возвращать.
Пользователь вводит:
кулинарные мастер-классы в Шанхае
кулинарные мастер-классы в Сиэтле
Пользователь получает лучший контент для данного пункта назначения и обычно ждет всего несколько 100 миллисекунд, чтобы все это разрешилось. #победа
Торт
Как и обещала, вот моя реализация Чиамбеллы (торт-кольцо) Найгеллы Лоусон — я тоже пила и пекла параллельно. Спасибо Джорджу Дикелю за такого способного помощника!