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

В чем разница между атомарностью и консистентностью

Атомарность означает, что операция выполняется целиком или не выполняется вообще (все или ничего). Например, транзакция в БД либо полностью применяется, либо откатывается.

Консистентность — это гарантия, что данные всегда находятся в корректном состоянии, соблюдая бизнес-правила. Например, после перевода сумма на счетах должна остаться неизменной.

Пример:

java
// Атомарность: либо оба обновления выполнятся, либо ни одного
transaction.begin();
updateAccount(accountFrom, -amount);
updateAccount(accountTo, +amount);
transaction.commit(); // или rollback() при ошибке

// Консистентность: проверка, что баланс не уходит в минус
if (accountFrom.getBalance() >= amount) {
    // выполнить перевод
}

Атомарность обеспечивает целостность операции, консистентность — логическую корректность данных.

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

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

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

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