Идемпотентность (idempotency)
Что такое идемпотентность и почему повторы операций не должны ломать данные.
Идемпотентность (idempotency)
Идемпотентность — свойство операции, которую безопасно повторять: выполнить её один раз или десять — результат будет одинаковым. Повторная загрузка того же документа не создаст дубликат.
Почему это важно
Сбои и повторы неизбежны: сеть оборвалась, запрос повторился, задача перезапустилась. Если операция не идемпотентна, повторы приводят к дублям и расхождению данных. Идемпотентность гарантирует, что система остаётся консистентной.
Как обеспечивается
Обычно через ключ идемпотентности: уникальный идентификатор операции, по которому система понимает, что этот запрос уже обработан, и не выполняет его дважды. Для загрузки документов ключом часто служит идентификатор самого документа.
Идемпотентность — основа надёжной синхронизации.