Разделите приём и обработку
Сохраните запрос, покажите, что он принят, и передайте длительную работу обработчику. Свяжите итоговый ответ с исходным сообщением и текущими правами пользователя.
Что проверить
- Ограничьте время ожидания и число повторов.
- Не выполняйте один запрос дважды при повторной доставке.
- Наблюдайте очередь и ошибки зависимости.
- Сохраняйте достаточный контекст для разбора проблемы.
Согласуйте правила работы с данными
Определите, какие данные можно отправлять модели, что хранится в журнале и как удаляется история.

