AWS Лямбда очень медленно истощает очередь SQS - PullRequest
0 голосов
/ 20 марта 2020

У меня есть очередь SQS и лямбда, которые используют очередь с размером пакета 10.

Лямбда

Резервный параллелизм = 600

Тайм-аут = 15 минут

Память = 640 МБ (но с использованием 150-200 МБ на выполнение)

Обработка одного элемента из очереди занимает около 10 секунд.

SQS

Доступные сообщения (видимые): 5,310

Сообщения в полете (не видны): 3,355

Время ожидания видимости по умолчанию: 20 минут

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

Я знаю о первой 1-й минуте пакета, и позже мой параллелизм будет увеличиваться каждую минуту, пока не достигнет предела. Но мой счет вызовов всегда между 40-80. Никогда не достигает 600, и моя очередь истощается очень медленно. И (согласно журналам) почти любой из элементов очереди выходит из строя, поэтому они больше не возвращаются в очередь.

Что не так с моими настройками?

enter image description here

РЕДАКТИРОВАТЬ: Также еще один график: enter image description here

Увеличился на мгновение и снова уменьшился ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...