- Очереди сообщений›
- Возможности
Возможности очередей сообщений
Обзор
Одна из современных рекомендаций по разработке ПО – создание архитектуры, в которой каждый отдельный компонент решения выполняет свою конкретную задачу. Такой подход позволяет повысить масштабируемость и надежность итоговой системы. С помощью очередей сообщений можно отправлять, хранить и получать сообщения компонентов приложений в любом масштабе без потери сообщений и необходимости обеспечивать постоянную доступность других сервисов.
Очереди сообщений предлагают несколько вариантов, которые позволяют указать, каким образом будет обеспечиваться доставка сообщений и защита. Подробнее об этом ниже. Очереди сообщений можно сочетать с моделью отправки сообщений «издатель-подписчик» в шаблоне проектирования разветвлений.
Начало работы
Попробуйте Amazon SQS
Для начала работы с Простым сервисом очередей Amazon (SQS) нужны всего три простых команды.
Сведения об уровне бесплатного пользования
Уровень бесплатного пользования AWS включает 1 млн запросов к Amazon Simple Queue Service (SQS).
Возможности
Доставка методом Push и методом Pull
Большинство очередей сообщений предоставляют опции push и pull для получения сообщений. Метод pull подразумевает постоянный опрос очереди на наличие новых сообщений. Push означает, что потребитель получает уведомление о получении сообщения (это также называется сообщениями Pub/Sub). Также можно использовать длительный опрос, чтобы разрешить запросам pull ожидать доставки новых сообщений в течение указанного времени перед завершением.
Запланированная и отложенная доставка
Многие очереди сообщений поддерживают установку определенного времени доставки сообщения. Если для всех сообщений нужно использовать одинаковую задержку, то можно создать очередь задержанной доставки.
Минимум однократная доставка
В очередях сообщений может содержаться несколько копий сообщений для избыточности и высокой доступности, а также повторной отправки сообщений при сбоях или ошибках связи, чтобы гарантировать, что они будут доставлены как минимум раз.
Строго однократная доставка
Если дубликаты недопустимы, очереди сообщений FIFO («первым пришел — первым пришел») позаботятся о том, чтобы каждое сообщение было доставлено ровно один раз (и только один раз), автоматически отфильтровывая дубликаты.
Очереди FIFO («первым получено – первым отправлено»)
В этих очередях самые старые (или первые) записи, иногда называемые «головой» очереди, обрабатываются первыми. Подробнее об очередях Amazon SQS FIFO см. в руководстве для разработчиков.
Вы также можете прочитать наши блоги: Использование очередей FIFO на Python и Amazon SQS для сохранения последовательности сообщений, принципы работы API Amazon SQS FIFO и очереди FIFO с однократной обработкой и дедупликацией.
Очереди необрабатываемых сообщений
Очередь необрабатываемых сообщений – это очередь, куда другие очереди могут отправлять сообщения, которые не удалось обработать. Они отделены от остальных, что упрощает дальнейшую проверку без блокировки обработки очереди или траты циклов ЦПУ на сообщения, которые могли бы никогда не быть отправлены.
Подробнее об очередях невыполненных писем читайте в нашем блоге «Использование очередей некорректных писем Amazon SQS для контроля сбоев сообщений». Чтобы узнать, как использовать очереди «мертвых писем» в Amazon SQS, ознакомьтесь с нашим руководством для разработчиков.
Упорядочение
Большинство очередей сообщений обеспечивают максимально эффективное упорядочение сообщений, что позволяет доставлять сообщения в том же порядке, в котором они были отправлены, и что сообщение будет доставлено хотя бы один раз.
Сообщения с ядовитыми пилюлями
Ядовитые пилюли – это особые сообщения, которые могут быть получены, но не обработаны. Этот механизм используется для передачи приемнику сигнала о необходимости завершения работы, чтобы он больше не ждал ввода. Этот способ подобен закрытию сокета в модели «клиент-сервер».
Безопасность
Очереди сообщений аутентифицируют приложения, пытающиеся получить доступ к очереди, и позволяют использовать шифрование для шифрования сообщений по сети, а также в самой очереди. Подробнее о защите очередей на AWS читайте в нашем блоге «Шифрование на стороне сервера для Amazon Simple Queue Service (SQS)». Подробнее о функциях безопасности Amazon SQS вы также можете узнать в нашем руководстве для разработчиков.
Простой сервис очередей Amazon (SQS)
Ссылки по теме
Нашли то, что искали сегодня?
Скажите, как улучшить качество контента на наших страницах