Вопрос на собеседовании · Backend-разработчик

Что такое идемпотентность и зачем она в API?

Короткий ответ, ключевые тезисы и ошибки, которых стоит избежать на интервью.

Обновлено 25 сентября 2026 г.важная тема
Backend-разработчикПрофессии и разделы
Короткий ответ

Идемпотентная операция при повторном выполнении с теми же параметрами оставляет систему в том же итоговом состоянии, что и один вызов. Это свойство особенно важно при таймаутах: клиент не знает, обработал ли сервер первый запрос, и может повторить его.

HTTP-методы имеют ожидаемую семантику: GET, PUT и DELETE считаются идемпотентными, POST — обычно нет. Для опасных повторов POST используют idempotency key, сохраняют результат первой операции и возвращают его для дубликатов.

01 · Структура ответа

Что важно сказать интервьюеру

Раскройте тезисы, которые относятся именно к этому вопросу, и поясните их на собственном примере:

Идемпотентность относится к итоговому состоянию, а не к идентичности каждого HTTP-ответа.
Ключ должен быть привязан к клиенту и параметрам операции.
Проверка ключа и бизнес-изменение должны быть согласованы атомарно.
Запись о результате хранится ограниченное и явно заданное время.

02 · Пример

Как объяснить на практике

При создании платежа клиент отправляет уникальный ключ. Если ответ потерялся и запрос повторился, сервер находит уже завершённую операцию и возвращает прежний результат вместо второго списания.

Не заучивайте формулировку дословно. Свяжите принцип с задачей из собственного проекта — интервьюер почти наверняка попросит уточнить детали реализации и компромиссы.

03 · Ошибки

Чего избегать в ответе

Считать любой POST автоматически безопасным для повторения.
Проверять ключ отдельно от транзакции, оставляя гонку между параллельными запросами.
Игнорировать ситуацию, когда один ключ повторно пришёл с другими параметрами.

04 · Углубление

Что могут спросить следом

  1. Как долго хранить ключи идемпотентности?
  2. Как реализовать это в базе данных?
  3. Чем идемпотентность отличается от дедупликации?

05 · Проверка фактов

Первоисточники по теме

Ссылки ниже помогают проверить понятия, методы и ограничения по теме. Они не являются доказательством того, что этот вопрос задают на каждом собеседовании.

Практика ответа

Ответьте вслух, а не про себя

Откроем тренировку сразу на этом вопросе. Выберите грейд, сформулируйте ответ и сравните его с подсказкой.

Потренировать ответ