Покажите клиент → API → БД для приёма и статуса, API/outbox → очередь → worker для обработки и worker → БД для результата. Подпишите назначение и характер каждого обмена.
Как обозначить связи на схеме backend-сервиса
Покажите клиент → API → БД для приёма и статуса, API/outbox → очередь → worker для обработки и worker → БД для результата. Подпишите назначение и характер каждого обмена.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Есть клиент, API, БД, очередь и worker. Нужно нарисовать связи так, чтобы были понятны синхронный запрос, фоновая работа и получение результата. Какие рёбра нужны?
Ответ
Покажите клиент → API → БД для приёма и статуса, API/outbox → очередь → worker для обработки и worker → БД для результата. Подпишите назначение и характер каждого обмена.
Не изображайте стрелкой несуществующий прямой доступ клиента к БД. Отдельно обозначьте протокол, инициатора, таймаут и повтор там, где это важно. Запись задачи и публикация события должны иметь согласованную гарантию, иначе возможна потеря между шагами. Схема полезна, когда объясняет поток, а не просто перечисляет прямоугольники.