Некоторые общие вопросы о SQS и обработке сообщений в контексте потребителей - PullRequest
0 голосов
/ 28 октября 2019

Не нашел мои вопросы (или ответы) в существующих SO, поэтому размещен здесь. Если кто-то может сослаться на существующие ответы, будет признателен, если нет, вот мои вопросы.

Учитывая: у нас SQS настроен с 2 (или более) потребителями для резервирования в мультитенантной системе

  1. Как мне управлять отказоустойчивостью, параллелизмом и пропускной способностью? Если я присоединю 2 (или N) потребителей к одному SQS, пропускная способность увеличится, но все они будут извлекать сообщения для одного и того же клиента, что приведет к проблемам с параллелизмом и увеличению конкуренции за нисходящие ресурсы, такие как службы / таблицы и т. Д., И если я присоединяю 1При потреблении 1 SQS обеспечивается параллелизм, но пропускная способность и отказоустойчивость снижаются.

  2. Что происходит, когда сообщение M1 доставляется Потребителю C (1), но обработка выходит за пределы периода видимости:

Доставляет ли SQS (пере) одно и то же сообщение C (1)? (если да, сколько раз? перед тем, как попробовать другой сконфигурированный потребитель, например: C (2), C (3) и т. д.) ИЛИ он случайным образом выбирает любого другого сконфигурированного потребителя C (n).

...