Работа с внешними системами: как пережить чужой сбой
Любой внешний вызов однажды не вернётся, и система должна это пережить.
Обязательное. Таймаут на каждый вызов. Ограниченное число повторов с растущей паузой — иначе вы добьёте чужой сервис своими запросами. Журнал обменов: что отправили, что получили, когда.
Почти обязательное. Защита от дублей на приёме. Запасное поведение: работать по последним данным, отложить в очередь, честно сообщить.
Признаки зрелости. Проверка формата с понятной ошибкой вместо падения на середине. Возможность повторить обмен вручную. Оповещение о том, что обмен давно не проходил: тишина хуже ошибки, потому что незаметна.
Организационная часть. Контакт на той стороне, канал связи, согласованные сроки реакции.
И полезная привычка: хранить сырые ответы внешних систем какое-то время. Когда контрагент утверждает, что прислал данные, только журнал обменов решает спор — и обычно в пользу того, кто его вёл.
IT Магнитогорск — t.me/magnitogorsk_it
IT Магнитогорск
@magnitogorsk_it
Работа с внешними системами: как пережить чужой сбой
Этот пост опубликован в Telegram-канале IT Магнитогорск. Подписаться можно по ссылке: @magnitogorsk_it.