Думайте о транзакции как о рецепте. Рецепт — это не одно большое действие; это множество мелких инструкций. Заказ 1 — это бутерброд с творогом. Инструкции: возьмите хлеб, нарежьте, намажьте, поджарьте творог, поджарьте, заверните. Заказ 2 — это яичный бутерброд. Инструкции: возьмите хлеб, нарежьте, намажьте, сварите яйцо, поджарьте, заверните. @AltiusLabs рассматривает каждую инструкцию как отдельную задачу. Он выполняет все инструкции, которые не используют один и тот же инструмент или место, одновременно. Если оба заказа требуют тостера, только инструкция по использованию тостера ждет своей очереди. Остальные продолжают выполнение. Две "конфликтующие транзакции" обычно пересекаются только в одной инструкции, а не во всей. Altius разбивает транзакции на инструкции, выполняет непересекающиеся вместе и последовательно только те инструкции, которые могут столкнуться. Эта более высокая степень детализации разбивки транзакций на инструкции делает подход Altius более эффективным, чем другие техники параллелизации.
634