Как это сделать на уровне Go — идейно, чтобы отправлять ответ пользователю и параллельно отправлять данные в аналитику?

Для необязательной аналитики можно передать событие в ограниченную очередь фонового worker и вернуть ответ. Для гарантированной доставки нужна durable-очередь или outbox.

Короткий ответ

Что ответить на собеседовании

Для необязательной аналитики можно передать событие в ограниченную очередь фонового worker и вернуть ответ. Для гарантированной доставки нужна durable-очередь или outbox.

Подробный разбор

Ответ с пояснениями

Для необязательной аналитики можно передать событие в ограниченную очередь фонового worker и вернуть ответ. Для гарантированной доставки нужна durable-очередь или outbox.

Просто go sendAnalytics() не защищает от остановки процесса и создаёт неконтролируемое число горутин. Контекст HTTP-запроса после завершения отменится, поэтому фоновая работа требует собственного ограниченного жизненного цикла. Задайте политику переполнения и не включайте в события секретные данные.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее