Какие виды интеграций существуют
анализархитектураинтеграцияпроектированиеуправление
Что проверяют
Знаете ли вы способы обмена и понимаете ли, что аналитик описывает не только счастливый путь.
Как отвечать
По способу обмена:
- синхронный вызов API (REST, gRPC, а в корпоративных системах ещё и SOAP): инициатор ждёт ответ. Подходит, когда результат нужен немедленно;
- асинхронный обмен через брокер: события публикуются, подписчики их получают. Развязывает системы по времени и позволяет добавлять получателей, не трогая отправителя;
- обратный вызов: внешняя система сама обращается к вашему адресу, когда произошло событие. Типично для платёжных шлюзов. Требует проверки подлинности запроса и устойчивости к повторам;
- файловый обмен: выгрузка по расписанию через файловое хранилище. Архаично, но при работе с банками и государственными системами встречается постоянно;
- репликация или перенос данных в хранилище для аналитики;
- встраивание интерфейса: виджет или готовый компонент чужой системы внутри вашего экрана.
По режиму: в реальном времени, с небольшой задержкой, пакетно по расписанию.
По направлению: одностороннее и двустороннее.
Что обязан зафиксировать аналитик, и это отличает полный ответ от перечня:
- контракт: поля, типы, обязательность, справочники значений, правила версионирования;
- кто инициатор и с какой частотой, ожидаемые объёмы и пики;
- аутентификация: токены, сертификаты, подписи;
- идемпотентность: что происходит при повторной доставке. Без договорённости повтор рано или поздно создаст дубль;
- сценарии ошибок: недоступность стороны, таймаут, частичный сбой, некорректные данные. Кто повторяет, сколько раз, куда попадает необработанное;
- соглашение об уровне обслуживания: допустимая задержка и доступность;
- как проверять: наличие тестового контура у партнёра, тестовые данные.
Самое частое упущение это именно ветки ошибок: основной путь описывают все, а поведение при недоступности партнёра выясняется уже в проде.
Где спотыкаются
Описывают только успешный сценарий.
Не согласовывают идемпотентность и получают дубли операций.
Не фиксируют версионирование контракта.
Считают файловый обмен устаревшим и не рассматривают его там, где он уместен.