Сервис может содержать контент, не предназначенный для несовершеннолетних, в том числе упоминающий о наркотических средствах, психотропных веществах и их аналогах, незаконное потребление которых причиняет вред здоровью, их незаконный оборот запрещен и влечет установленную законодательством ответственность.
©2025, ООО «Звук» является аккредитованной ИТ-компанией, ОКВЭД 62.01: разработка программного обеспечения. ПО ООО «Звук» состоит в реестре отечественного ПО: №16328 от 23.01.2023. В Сервисе применяются рекомендательные технологии в соответствии с

Правилами

Подкаст GetAnalyst

GetAnalyst

Подкаст  ·  13 сентября  ·  44 мин

Идемпотентность и коммутативность API: что это и как применяют на практике

Эпизод подкаста Идемпотентность и коммутативность API: что это и как применяют на практике

Слушать эпизод

Идемпотентность и коммутативность API: что это и как применяют на практике

GetAnalyst

Как повторные запросы 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