Встречается на собеседованиях • сегодня
Что входит в одну транзакцию в REST API
В REST API транзакция обычно означает атомарную операцию, которая либо полностью выполняется, либо полностью откатывается. Однако REST по своей природе stateless, поэтому полноценные транзакции не поддерживаются на уровне протокола.
Ключевые моменты:
- Каждый HTTP-запрос считается отдельной транзакцией
- Для обеспечения атомарности нескольких операций нужны:
- Идемпотентные методы (PUT, DELETE)
- Компенсирующие транзакции
- Паттерны типа Saga
Пример с частичной эмуляцией:
python
# Псевдокод для эмуляции транзакции
try:
res1 = requests.put('/accounts/1', json={'amount': -100}) # Снятие
res2 = requests.put('/accounts/2', json={'amount': 100}) # Зачисление
if res1.status_code != 200 or res2.status_code != 200:
raise Exception("Transaction failed")
except:
# Компенсирующие действия
requests.put('/accounts/1', json={'amount': 100}) # ВозвратДля настоящих транзакций лучше использовать специфичные API или GraphQL с мутациями.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы