[ПРЕСС-РЕЛИЗ – Пало-Альто, Калифорния, 20 марта 2024 г.]
Pilotfish, прототип расширения Sui, смог увеличить производительность выполнения смарт-контрактов прямо пропорционально количеству используемых машин.
Mysten Labs, команда ведущих экспертов по распределенным системам, языкам программирования и криптографии и создателей сети Sui, сегодня объявила о знаковом достижении в масштабировании мощности блокчейна. Во время тестирования и разработки в среде блокчейна Sui прототип расширения Sui Pilotfish увеличил пропускную способность в 8 раз при поддержке 8 машин, успешно иллюстрируя возможность линейного масштабирования. Примечательно, что задержка на транзакцию уменьшалась по мере добавления большего количества машин во время теста, что впервые в истории доказало жизнеспособность линейного горизонтального масштабирования для транзакций блокчейна с низкой задержкой.
Это доказательство концепции было официально представлено в виде академического препринта под названием «Pilotfish: выполнение распределенных транзакций для ленивых блокчейнов» и первоначально опубликовано 29 января 2024 года в виде статьи в архиве открытого доступа arXiv.
«Pilotfish меняет правила игры, поскольку индустрия блокчейнов стремится достичь такого же динамического увеличения мощности, которое в настоящее время возможно только с помощью централизованных серверных технологий», — сказал Лефтерис Кокорис-Когиас, один из авторов статьи и исследователь Mysten Labs. «Pilotfish обладает потенциалом значительно увеличить пропускную способность, превосходящую то, что сейчас находится на переднем крае высокопроизводительных блокчейнов, обеспечивая уровень пропускной способности транзакций, которого не может достичь ни один другой существующий сегодня блокчейн».
Sui лидирует в отрасли по пропускной способности, используя несколько ядер для параллельного выполнения транзакций внутри отдельных валидаторов. Используя этот подход, через несколько месяцев после создания основной сети Суй достиг 65,8 миллионов транзакций за один день — больше, чем когда-либо в истории блокчейна. Однако одна машина может включать только ограниченное число ядер, поэтому прирост пропускной способности с помощью этой стратегии ограничен. Более того, машины, способные вмещать большое количество ядер, обходятся дорого в покупке и использовании. Революционное решение, предлагаемое Pilotfish, позволяет одному валидатору одновременно использовать несколько серверов. Эта новая технология не только делает возможной эластичную емкость, но и ее архитектура автоматического масштабирования, подобная централизованным решениям, таким как AWS или Heroku, позволяет использовать меньшие по размеру и более дешевые серверы, доступные по требованию.
Почти все другие блокчейны, стремящиеся к масштабированию, используют ту или иную форму пакетной обработки — группировки транзакций для одновременного добавления. Недостатком этого метода является значительная дополнительная задержка. Вместо того, чтобы транзакции сразу переходили к завершению, они задерживаются в ожидании, пока другие будут объединены в пакеты для выполнения вместе с ними. В отличие от других решений масштабирования, Pilotfish обеспечивает потенциально линейное масштабирование пропускной способности без увеличения задержки. Проще говоря, благодаря горизонтальному масштабированию, реализованному в Pilotfish, валидатор, просто задействовав необходимое количество машин, может адаптировать свою пропускную способность и использование ресурсов к конкретному варианту использования.
Альберто Соннино, научный сотрудник Mysten Labs, сказал: «До сих пор единственным вариантом увеличения мощности валидатора было обновление до более мощной машины. Pilotfish устраняет это ограничение, делая возможным горизонтальное масштабирование путем простого добавления серверов и без задержка выполнения. С Pilotfish вопрос больше не в том, возможен ли определенный уровень пропускной способности, а в том, сколько серверов для этого потребуется».
Pilotfish достигает своей замечательной масштабируемости, позволяя одному валидатору выполнять транзакции на нескольких машинах. В частности, Pilotfish разделяет функцию проверки на три ключевые роли: (1) основная, которая обрабатывает транзакции секвенирования с использованием консенсуса с высокой пропускной способностью, (2) SequencingWorkers (SW), которые хранят транзакции и отправляют их на выполнение; и (3) ExecutionWorkers (EW), которые хранят состояние блокчейна и выполняют транзакции, полученные от SW. Различные компоненты могут находиться на нескольких разных машинах, чтобы повысить производительность системы и повысить точность.
Что касается экспериментальных результатов, Pilotfish уже добился замечательных результатов с точки зрения линейного масштабирования, низкой задержки и поддержки различных рабочих нагрузок. В ходе тестирования Pilotfish сократил время отклика сети и сохранил задержку ниже 20 мс. В планы на будущее входят такие улучшения, как несколько SequencingWorker, репликация сегментов и сверхбыстрая сеть.
Источник