Серверная система продажи билетов генерирует ID заказа, а затем параллельно запускает функции Lambda для инвентаризации и оплаты. Если место случайно продано дважды, первое полученное бронирование должно получить место, и только оплата этого бронирования должна быть обработана. Если оплата первого бронирования отклонена, второе бронирование должно получить место, и его оплата должна быть обработана. Какой дизайн соответствует этим требованиям?
Выберите ответ
Нажмите на вариант, чтобы проверить свой ответ.
Правильный ответ: Отправить ID заказа в топик Amazon SNS FIFO, который распределяет сообщения в одну очередь Amazon SQS FIFO для управления запасами и в другую очередь SQS FIFO для обработки платежей..
Почему это правильный ответ
Правильный ответ — использование Amazon SNS FIFO и Amazon SQS FIFO. SNS FIFO гарантирует, что сообщения (ID заказов) обрабатываются строго в том порядке, в котором они были отправлены, что критически важно для определения "первого полученного бронирования". Распределение в две отдельные очереди SQS FIFO (для инвентаризации и оплаты) позволяет этим процессам выполняться независимо, но с сохранением порядка обработки для каждого бронирования. Если первое бронирование не удается, второе будет обработано следующим, соблюдая логику приоритета. Остальные варианты не подходят: Последовательный вызов Lambda (инвентаризация - оплата) не обеспечивает параллельной обработки и может привести к задержкам. Использование стандартных SNS и SQS не гарантирует порядок сообщений, что может привести к неправильному распределению мест при одновременных запросах.
Сдайте экзамен — без бесконечного поиска ответов
Получите все проверенные вопросы и объяснения для этого экзамена в одном месте и сэкономьте часы подготовки. 1000+ сертификаций · 20+ языков · начните бесплатно.
Сдайте экзамен быстрее → Карта не требуется