Идемпотентность и коммутативность API: что это и как применяют на практике
(Видео с переключением слайдов: • Идемпотентность и коммутативность API... + Как повторные запросы API могут привести к сбоям в системе? Почему важно, чтобы результат операций оставался корректным, даже если их порядок выполнения изменится? Эти вопросы об идемпотентности и коммутативности актуальны для системных аналитиков, которые работают с системами, в которых есть бронирования, заказы или платежи. В подкасте обсудим, как принципы идемпотентности и коммутативности API помогают избежать проблем и обеспечивают корректность работы систем. 🔗 Презентация к эпизоду: 1:25 - Проблемы приложений, которые игнорируют идемпотентность и коммутативность в своих API. 3:24 - О принципах работы сетей с пакетной передачей данных. 6:15 - Определение идемпотентности и коммутативности. О проблемах, с которыми столкнулись на проекте из-за несоблюдения этих свойств API. Как защищаться от этих проблем со стороны UI, без изменения API. 11:40 - Ключ идемпотентности и где его использовать в REST API в headers, query или body JSON. Естественный и суррогатный ключ. 18:45 - Инварианты в пользовательских сценариях - о проблемах бизнес-логики из-за которой создаются дубликаты данных в системе. 26:00 - Коммутативность в API. 30:52 - GET, POST, PUT, PATCH, DELETE и их идемпотентность. Почему метод PATCH не идемпотентный, хотя он похож на идемпотентный. Можно ли не идемпотентные методы делать идемпотентными. 42:25 - Подведение итогов и рекомендации. Ведущая: Екатерина Ананьева Гости: Елизавета Акманова, Старший системный аналитик в компании UseTech