Ответ
Транзакция — это последовательность операций, которая выполняется как единое целое. Если хотя бы одна операция в транзакции завершается неудачей, все изменения откатываются (принцип атомарности).
В веб-разработке транзакции часто встречаются при работе с базами данных (например, IndexedDB) или API.
Пример с IndexedDB:
const transaction = db.transaction(['users'], 'readwrite');
const store = transaction.objectStore('users');
store.add({ id: 1, name: 'Alex' });
store.add({ id: 2, name: 'Max' });
transaction.oncomplete = () => console.log('Транзакция завершена');
transaction.onerror = () => console.log('Ошибка, откат изменений');
Ключевые свойства транзакций:
- Атомарность — все или ничего.
- Согласованность — данные остаются валидными.
- Изолированность — параллельные транзакции не влияют друг на друга.
- Долговечность — после успешного выполнения изменения сохраняются.