Комментарии 7
правильно ли я понимаю, что если после отправки автокоммита произойдет лаг сети или просто рестарт сервиса, то сообщение ни до внешнего апи, ни до dlq не дойдет?
На случай лага сети есть те же ретраи в том числе и при отправке в Кафку, если же сам под должен будет перезапуститься, то отработает gracefull shutdown, который не даст сообщениям потеряться и завершит таски, которые уже в рантайме (либо отправиться в DLQ, либо во внешний API)
p.s. gracfull shutdown на ответственности разработчика
я имею ввиду самый крайний случай, когда, например, время лага в сети будет больше времени, отведённого на gracefully shutdown
А не рассматривали outbox-паттерн для решения этой задачи? Кажется он решит проблему без dlq, с сохранением всей необходимой истории и ретраями произвольное количество раз.
При этом не будет риска потери данных при отказе ноды, и проблем с graceful shutdown особо не будет

Dead Letter Queue в Kafka на практике