В последние годы параллельные транзакции становятся одной из самых обсуждаемых тем в мире блокчейна. Несмотря на распространенное мнение о том, что блокчейн-технологии не могут одновременно обрабатывать несколько операций, существует множество примеров, когда это возможно. В данной статье мы рассмотрим основные подходы к реализации параллельных транзакций в различных блокчейн-системах и выясним, какие преимущества они могут принести.
1. Проблема последовательной обработки транзакций
Традиционно большинство блокчейн-сетей, таких как Ethereum, обрабатывают транзакции последовательно:
- Состояние сети изменяется с каждой новой транзакцией.
- Зависимости между транзакциями часто становятся очевидными только после их выполнения.
- Эффективность работы снижается при высоком объеме операций.
Читая эту статью, вы узнаете о различных методах повышения производительности блокчейнов и о том, как разработчики обходят ограничения последовательной обработки.
2. Подходы к параллельной обработке в разных системах
Ethereum и обновление Glamsterdam
В сети Ethereum параллелизм пока не реализован на уровне основной сети:
- EIP-7928, добавляющее списки обращений на уровне блока, должно улучшить ситуацию.
- Текущая модель: каждая транзакция работает с новым состоянием после предыдущей.
Solana: предварительное определение данных
Solana использует уникальный подход:
- Указание аккаунтов: транзакция содержит список аккаунтов для чтения и изменения.
- Sealevel: позволяет выполнять несколько операций одновременно при отсутствии конфликтов.
Sui: работа с объектами
Sui представляет собой другую модель:
- Объекты с идентификаторами: каждое состояние или NFT представлено как отдельный объект.
- Fastpath: обеспечивает более быструю обработку для объектов одного адреса без ожидания подтверждения консенсуса.
3. Современные механизмы параллелизма и их реализация
Aptos: выполнение до проверки
Aptos применяет метод Block-STM:
- Параллельное выполнение операций, которое затем проверяется на конфликты.
- Отмена зависимых транзакций: если обнаруживается старое значение данных, операция пересчитывается.
Anatomy of Monad and Sei's Optimistic Control
Parellelism также активно используется в других проектах:
- Monad: предполагает оптимистичный подход к выполнению с минимальными задержками.
- Sei: оценивает возможные конфликты еще до исполнения и распределяет операции по потокам.
- Статистика Sei: увеличение операций с 3000 до 15000 в секунду для простых переводов благодаря параллелизму.
В заключение, можно сказать, что параллельные транзакции становятся реальностью благодаря инновациям в архитектуре различных блокчейн-систем. Это открывает новые горизонты для разработчиков и пользователей, позволяя значительно повысить эффективность работы сетей и снизить время ожидания подтверждений операций.