2014-01-30 3 views

ответ

2

Amazon SQS только приобрела FIFO Queues with Exactly-Once Processing & Deduplication:

Сегодня мы делаем SQS еще более мощным и гибким с поддержкой для FIFO (первый в первый вышел) очередей. Мы внедряем этот новый типа очереди в двух регионах в настоящее время, и планируем сделать его доступным в многих других в начале 2017.

Этих очереди предназначены, чтобы гарантировать, что сообщения обрабатываются ровно один раз, в том порядке, в котором они отправлены, и без дубликатов. [...]

[курсив мой]

Как было подчеркнуто, что эти новые очереди FIFO SQS будет оказывать какие-либо особые соображения потреблять сообщения Amazon SQS в истинно FIFO ненужным, но не являются все же доступны во всех SQS regions [первоначально только в США (Огайо) и США (Орегон)].

1

Короче говоря, нет:

Q: Amazon SQS Предусматривает ли первый в первой (ФИФО) доступ к сообщениям?

Нет, Amazon SQS не гарантирует доступ FIFO к сообщениям в очередях SQS Amazon, главным образом из-за распределенного характера SAMS Amazon SQS. Если вам требуется конкретное упорядочение сообщений, вы должны разработать приложение для его обработки.

http://aws.amazon.com/sqs/faqs/

+0

извинения за поздний ответ. Я искал часто используемый шаблон, который можно использовать в приложении для достижения этого. – Arvind

+1

@Arvind, вы можете добавить заказы на свои сообщения вручную, добавив маркер заказа, а затем заказывая себя, но это чревато проблемами в распределенной системе. – tster

1

Сообщения, которые должны поступать в определенном порядке, могут не быть хорошим кандидатом для стандартной очереди SQS. Однако при отправке сообщения вы можете установить счетчик последовательности сообщений. В конце приема вы можете продолжать обрабатывать сообщения, если последовательность правильная. В случае появления сообщения о последовательности, дождитесь появления правильного сообщения, а затем обработайте правое сообщение последовательности и другие, которые вошли между ними.

enter image description here

На Nov 17, 2016 FIFO очереди были введены в некоторых регионах (US East (Ohio) и US West (Oregon)), которая дополняет стандартную очередь. Порядок, в котором сообщения отправляются и принимаются, строго сохраняется, и сообщение доставляется один раз и остается доступным до тех пор, пока потребитель не обработает и не удалит его; дубликаты не вводятся в очередь. Очереди FIFO используют те же действия API, что и стандартные очереди, а механики для приема и удаления сообщений и изменения таймаута видимости одинаковы. Однако при отправке сообщений необходимо указать идентификатор группы сообщений. введите описание изображения здесь

enter image description here

Смежные вопросы