Встречается на собеседованиях • сегодня

Как откатить операцию в микросервисной архитектуре

В микросервисной архитектуре откат операции обычно реализуется через паттерн Saga. Вместо традиционного ACID-транзакционного подхода Saga разбивает операцию на этапы, каждый из которых может быть откачен компенсирующим действием.

Пример:

java
// Saga шаг с компенсацией
public class OrderSaga {
    public void reserveInventory() {
        // Логика резервации
    }

    public void compensateReserveInventory() {
        // Отмена резервации
    }
}

Ключевые моменты:

  1. Каждый сервис отвечает за свою часть транзакции
  2. При ошибке вызываются компенсирующие методы
  3. Используются:
    • Хореография (события)
    • Оркестрация (центральный координатор)

Важно предусмотреть идемпотентность операций и механизмы повторных попыток.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы