Отправка сообщения из Amazon SQS в базу данных SQL на основе атрибутов сообщения - PullRequest
0 голосов
/ 24 мая 2018

Вариант использования моей задачи: На данный момент сценарий использования заключается в том, что я заполняю в форме данные, такие как Имя, Фамилия и т. Д., А затем по нажатию кнопки «Отправить» данные отправляются.непосредственно в Amazon SQS , а затем определен прослушиватель, содержащий кнопку, и при нажатии этой кнопки данные отправляются из прослушивателя в базу данных MSSQL.

Сценарий (в настоящее время): На данный момент отправляются все сообщения, принадлежащие даже к различным атрибутам сообщения.

Требование: Я хочу отправить конкретное сообщение, относящееся к определенным атрибутам сообщения. Например: Предположим, что класс A, класс B и класс C - это три разных атрибута сообщения, а класс A содержит одно сообщение, класс B содержит два сообщения, а класс C содержит четыре сообщения, и мне нужны только сообщениядолжен быть отправлен атрибут класса B, а не класса A и класса C.

Я хочу знать, что возможно отправлять только выбранное / конкретное сообщение на основе атрибута сообщения из Amazon SQS в базу данных SQL?

Любая помощь будет принята с благодарностью.Заранее спасибо.

1 Ответ

0 голосов
/ 24 мая 2018

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

Есливам нужен общий источник сообщений, чтобы его выходные данные фильтровались по атрибутам сообщений, затем предлагаемое решение - публиковать сообщения в теме SNS, а затем подписывать очереди на эту тему на основе фильтров атрибутов сообщений, которые равны поддерживается в SNS.Эта конфигурация позволила бы, например, очереди 1 захватывать сообщения типов A, B и C, одновременно позволяя очереди 2 захватывать сообщения типов C, D и E. Обратите внимание на перекрытие типа C. Этот класс сообщенийв этой конфигурации будет доставляться в обе очереди.

См. Фильтрация сообщений с помощью Amazon SNS и Отправка уведомлений о событиях разветвления .

Темы SNS иОчереди SQS могут быть сопоставлены «многие ко многим», когда несколько очередей подписываются на несколько тем в любой требуемой конфигурации.

Обратите внимание, что когда очередь SQS подписывается на тему SNS, поведение по умолчанию относится только к полезной нагрузке.быть отправленным в очередь.Чтобы получить всю оболочку SNS, включая атрибуты сообщений SNS, включите «сырую доставку сообщений» для каждой подписки.

Таким образом, остается вопрос о назначении атрибутов сообщения SQS, если не для службы.фильтрацияОни могут быть метаданными для выгоды получателя, предоставляя информацию о полезной нагрузке без необходимости фактической десериализации полезной нагрузки, или они могут предоставлять информацию о кодировании передачи полезной нагрузки, например, имели ли полезные данные сжатие gzip и base64кодировка, применяемая отправителем, которую потребитель должен знать для распаковки полезной нагрузки.

...