После отправки записи показывайте состояние ожидания и идентификатор операции. Календарь обновляйте из серверной модели чтения, а push или WebSocket используйте как сигнал получить актуальные данные.
Как организовать обновление календаря в мобильном приложении, когда запись на тренировку обрабатывается асинхронно через Kafka и может быть добавлена из другого источника?
После отправки записи показывайте состояние ожидания и идентификатор операции. Календарь обновляйте из серверной модели чтения, а push или WebSocket используйте как сигнал получить актуальные данные.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
После отправки записи показывайте состояние ожидания и идентификатор операции. Календарь обновляйте из серверной модели чтения, а push или WebSocket используйте как сигнал получить актуальные данные.
Kafka остаётся внутренним транспортом: мобильный клиент не обязан обращаться к ней напрямую. Обработчик подтверждает запись, обновляет календарь и публикует уведомление; события из других источников проходят тот же путь. Клиент периодически или по сигналу перечитывает данные с версией, а после возврата из фона обязательно синхронизируется. Предусмотрите пропущенные уведомления, повторы, отказ записи и ограниченный polling. Оптимистическая отметка не должна выглядеть подтверждённой до результата backend.