Как изменить / проверить лимит попыток запуска в облачном хранилище Google при сбое? - PullRequest
0 голосов
/ 11 февраля 2020

У меня есть топи c, которая при публикации sh отправляет событие в конечную точку запуска в облаке, и я получил триггер в хранилище для публикации sh для этой топи c. Контейнер в облачной среде не может обработать событие, и оно было перезапущено более сотни раз, и я не хочу тратить на это деньги. Как можно ограничить повторную попытку при сбое в контейнере облачного запуска?

Ответы [ 2 ]

1 голос
/ 11 февраля 2020

Возможный ответ на загадку может быть следующим понятием.

Если мы читаем документацию по PU SH найдено подписок здесь , мы находим следующее:

... Pub / Sub повторяет доставку до истечения срока действия сообщения по истечении срока хранения сообщения подписки.

Это означает, что если Pub / Sub отправляет сообщение в Cloud Run и Cloud Выполнение не подтверждает сообщение, возвращая код ответа 200, после чего сообщение будет повторно отправлено в течение «периода хранения сообщения». По умолчанию это 7 дней, но согласно документации можно установить минимальное значение 10 минут. Похоже, это говорит мне о том, что мы можем остановить отравляющее сообщение через 10 минут (минимум) повторных попыток.

Если сообщение отправлено и не подтверждено, оно не будет сразу же снова отправлено, а вместо этого быть выдвинутым как функция алгоритма отсрочки, описанного здесь .

0 голосов
/ 11 февраля 2020

Если мы посмотрим на документацию gcloud , мы найдем ссылку на концепцию максимального количества попыток доставки (--max-delivery-attempts). С этим связана топи c, называемая мертвой буквой топи c (--dead-letter-topic). Похоже, это определяет, что если попытка доставить вложенное сообщение паба больше, чем максимальное количество раз, сообщение будет удалено из очереди сообщений, связанных с подпиской, и перемещено в топи c, связанные с мертвыми письмо. Если вы определите это для своей среды, то ваш Cloud Run будет выполняться только конечное число раз, после чего сообщения poision будут перемещены в другое место.

...