
Будучи следующим поколением высокомасштабируемого блокчейна, Solana привлекла к себе большое внимание. В основном это связано с его превосходной производительностью, которая позволяет обрабатывать тысячи транзакций в секунду с практически незначительными затратами на газ. Одним из ключевых элементов передовой технологии Solana является среда выполнения SVM, включающая механизм распараллеливания Sealevel.
В этой статье рассказывается о виртуальной машине Solana (SVM) и о том, как эта инновационная инфраструктура позволяет блокчейну Solana обеспечивать более высокую производительность, чем традиционные блокчейны EVM, такие как Ethereum. Хотя EVM уже давно является доминирующим стандартом виртуальных машин в мире шифрования, мы также рассмотрим, как SVM постепенно расширяется с помощью объединенных решений, таких как Nitro и Eclipse.
Виртуальная машина Солана (SVM) и уровень моря
Виртуальная машина Solana, или сокращенно SVM, представляет собой среду выполнения для обработки транзакций и смарт-контрактов/программ в сети Solana. Чтобы лучше понять SVM, нам сначала нужно понять, как виртуальные машины работают в зашифрованной сети.
В контексте блокчейна виртуальная машина (ВМ) — это часть программного обеспечения, которая запускает программы, более известные как среда выполнения, для выполнения смарт-контрактов криптовалютной сети. Когда транзакция отправляется, виртуальная машина сети отвечает за ее обработку и управление состоянием блокчейна (текущим состоянием всей сети), на которое влияет выполнение этой транзакции. Конкретные правила изменения состояния сети определяются виртуальной машиной.
При обработке транзакции виртуальная машина преобразует код смарт-контракта в формат, который может выполнять аппаратное обеспечение валидатора. В Solana основными языками написания смарт-контрактов являются Rust, C и C++, которые компилируются в байт-код BPF через виртуальную машину Solana (SVM), чтобы транзакции могли эффективно выполняться сетевыми узлами (валидаторами).

Каждый из узлов сети Solana, называемых валидаторами, запускает собственную изоляционную среду виртуальной машины Solana (SVM) для поддержания консенсуса во всей цепочке блоков. Когда смарт-контракт развертывается (изменяет состояние сети), он сообщает необходимые изменения состояния среде выполнения. Затем среда выполнения Solana пересылает эти изменения состояния экземплярам SVM, работающим в каждой системе валидатора, и все узлы валидатора получают копию и транслируют ее, тем самым обновляя блокчейн. Такое распределение экземпляров SVM между валидаторами приводит к созданию децентрализованной сети, что снижает риск DDoS-атак или отключений. Кроме того, эта изоляция гарантирует, что потенциальные ошибки или уязвимости в смарт-контрактах не поставят под угрозу безопасность или стабильность всей сети Solana.
Подводя итог, эти экземпляры SVM можно рассматривать как «микрокомпьютеры», которые выполняют необходимые операции для обновления состояния сети Solana на основе инструкций, предоставляемых транзакциями. Хотя сегодня многие блокчейны полагаются на виртуальную машину Ethereum (EVM), Solana разработала собственную виртуальную машину с уникальными функциями, обеспечивающими повышенную производительность.

Ключевым компонентом SVM является уровень моря. Механизм позволяет одновременно выполнять несколько смарт-контрактов, не влияя на производительность друг друга, обеспечивая «горизонтальное» масштабирование в среде выполнения Solana — концепцию, называемую параллельной обработкой. Это возможно, поскольку смарт-контракты Solana описывают, какие данные (состояние) будут считываться или записываться при выполнении во время выполнения. Это позволяет транзакциям без конфликтов выполняться одновременно, а также тем, которые читают только одну и ту же информацию. Таким образом, Sealevel позволяет SVM обрабатывать десятки тысяч транзакций одновременно, а не обрабатывать их одну за другой, как виртуальная машина Ethereum (EVM).
SVM и EVM (виртуальная машина Ethereum)
Хотя EVM и SVM выполняют схожие функции, Solana VM более эффективна и быстрее. В EVM, когда смарт-контракт переводит доллар с баланса пользователя, эта транзакция сохраняется в хранилище конкретного контракта. Такая конструкция создает потенциальные проблемы, если виртуальная машина Ethereum пытается обрабатывать несколько транзакций параллельно. Например, два разных смарт-контракта могут попытаться потратить баланс пользователя одновременно, или другой контракт может прочитать баланс того же пользователя во время обновления, вызывая несогласованность и конфликты.

Напротив, модель учетной записи Solana разделяет такие данные, как балансы пользователей, для лучшей организации и эффективности. Транзакции в Solana также должны явно указывать данные, которые они будут читать и изменять перед выполнением в SVM. Как упоминалось ранее, это позволяет программам, которые не взаимодействуют с одними и теми же данными, работать одновременно, что помогает уменьшить перегрузку и снизить высокие комиссии. Например, Solana VM может обрабатывать как Толи, отправляющую 1 доллар Раджу, так и Армани, отправляющую 3 доллара Чейзу.

Одна из причин, по которой EVM испытывает трудности с одновременной обработкой нескольких транзакций, заключается в том, что это «однопоточная» среда выполнения, которая может обрабатывать только один контракт за раз. Таким образом, конструкция EVM не использует преимущества многоядерного оборудования, а это означает, что только одно ядро оборудования валидатора активно обрабатывает транзакции, в то время как другие ядра остаются недостаточно загруженными. Это часто приводит к перегрузке сети и повышению комиссий за транзакции. Однако важно отметить, что помимо отсутствия многопоточной среды выполнения, ограничения EVM могут вызывать и другие факторы, такие как желание поддерживать низкие требования к оборудованию на работающих узлах.
С другой стороны, Sealevel оптимизирует производительность среды выполнения Solana за счет эффективного использования доступных аппаратных ресурсов. SVM — это многопоточная среда выполнения, предназначенная для параллельной обработки нескольких транзакций с использованием всех доступных ядер машины-валидатора. Это позволяет Solana более эффективно масштабироваться, поскольку оборудование валидатора продолжает совершенствоваться. Благодаря своей архитектуре Solana VM также может лучше управлять комиссиями за транзакции. Это привело к развитию локализованных рынков комиссий, позволяющих распределять комиссии на основе смарт-контрактов. Напротив, цепочка EVM опирается на глобальный рынок комиссий, а это означает, что монетные дворы NFT могут влиять на свопы или транзакции DeFi, даже если эти транзакции не связаны друг с другом.

Подводя итог, можно сказать, что возможности параллельной обработки SVM позволяют Solana достигать более высокого TPS, что приводит к более высокой скорости транзакций, а стоимость практически незначительна по сравнению с архитектурой EVM. SVM позиционируется как блокчейн-среда следующего поколения с более высокой эффективностью и производительностью. По мере того, как все больше разработчиков осознают это, мы начинаем видеть более широкое внедрение SVM в качестве среды выполнения смарт-контрактов, и формируется новая экосистема агрегации SVM.
Развивающаяся экосистема накопительных пакетов SVM
Агрегация — это решение для масштабирования блокчейна, которое обрабатывает транзакции за пределами блокчейна уровня 1 (например, Solana), а затем задним числом публикует данные на уровне 1. Объединения предназначены для уменьшения перегрузки сети и комиссий за транзакции путем объединения нескольких транзакций вместе для формирования «доказательства», которое затем передается в основную цепочку. Самым большим преимуществом создания накопительного пакета является возможность полностью настроить цепочку. Эта настройка позволяет использовать различные варианты использования, такие как индивидуальные книги заказов, криптографические мемпулы для минимизации MEV (извлекаемая ценность майнера) или разрешенные приложения, разработанные для удовлетворения конкретных требований.
Виртуальные машины также можно использовать для упрощения процесса развертывания для разработчиков в других цепочках, использующих ту же виртуальную машину. Этот сетевой эффект приносит большую пользу Ethereum и его виртуальной машине, поскольку это первая среда выполнения криптографических смарт-контрактов. Таким образом, EVM стала основной средой исполнения для создания агрегированных блокчейнов. Среди двух типов объединений, Optimistic и Zk, наиболее распространены оптимистические объединения, такие как Arbitrum. В последнее время в SVM было сделано много усовершенствований, направленных на предоставление разработчикам Solana технологии объединения. Основными проектами, созданными для Solana, являются Nitro и Eclipse.

Nitro — это накопительное решение Optimistic, похожее на Arbitrum или Optimism, которое использует виртуальную машину Solana (SVM), чтобы позволить разработчикам Solana переносить свои dApps в различные экосистемы. Nitro планирует сначала запустить Sei, отраслевую цепочку транзакций на базе Cosmos, а затем распространить ее на другие сети. Он использует SVM для параллельного выполнения транзакций, что означает, что пользователи смогут выполнять их так же, как на Solana, в то время как Nitro использует Sei для расчетов и достижения консенсуса. Кроме того, поскольку Sei становится частью экосистемы Cosmos, проекты Nitro и их пользователи смогут извлечь выгоду из технологии взаимодействия IBC и получить доступ к активам и ликвидности Cosmos.
Еще одно решение для объединения SVM, находящееся в стадии разработки, — это Eclipse, предназначенное для облегчения развертывания настраиваемых объединений. Оптимистичные накопительные пакеты Eclipse позволяют проектам создавать свои собственные уникальные цепочки приложений, извлекая выгоду из безопасности существующих сетей (например, Cosmos Application Chain, Polygon, Ethereum) и используя виртуальную машину Solana (SVM). SVM действует как среда выполнения, а Eclipse управляет расчетами, консенсусом и доступностью данных (DA) с управлением сетью уровня 1, выбранным разработчиком. В настоящее время Eclipse предоставляет решение для объединения Optimistic, но также работает над запуском zk-rollup.

Eclipse выпустила два накопительных решения, построенных на основе SVM:
Polygon SVM: Благодаря этому объединению любой проект, созданный на Solana, можно легко развернуть в сети Polygon;
Cascade: представленный Injective и Eclipse, Cascade представляет собой накопительный пакет SVM, оптимизированный для экосистемы IBC. Это позволит проектам Solana легко развертываться в Cascade и получать доступ к активам и ликвидности Cosmos AppChain. Кроме того, проекты на Injective теперь могут использовать преимущества параллельной SVM Cascade.
Все эти решения упрощают использование Solana VM и расширяют сферу ее применения. Пользователи из других цепочек также смогут «попробовать» опыт распараллеливания Solana без каких-либо препятствий, что может привести к тому, что больше людей признают преимущества SVM, что позволит большему количеству проектов перенести свои dApps в Solana из-за преимуществ архитектуры и добавить больше пользователей. .
SVM — это блокчейн-среда нового поколения для разработчиков.
Несмотря на то, что Solana существует всего три года, она уже продемонстрировала впечатляющую производительность и разработку решений расширения, таких как Nitro и Eclipse, поверх своих виртуальных машин, что подчеркивает успех ее инновационной архитектуры выполнения. Солана смогла извлечь уроки из проблем, с которыми столкнулись старые сети, такие как Биткойн и Эфириум. Биткойн не был предназначен для смарт-контрактов, что привело к появлению Ethereum. Аналогичным образом, Ethereum не был готов к массовому внедрению и высокоскоростным транзакциям, что открыло путь Solana и параллельной обработке. Кроме того, разработчикам становится все проще получать доступ к средам SVM: Neon Labs представляет совместимость Solidity со средой выполнения Solana, а также предстоящее обновление Runtime v2, которое должно позволить разработчикам использовать несколько языков программирования (например, Move). совместимые децентрализованные приложения.
Понятно, что Solana VM предоставляет более продвинутую среду для создания приложений следующего поколения. Параллельная обработка транзакций обеспечивает более высокую пропускную способность. Подобно тому, что возможно в традиционных финансах, позволяя разработчикам создавать продукты любого типа, не беспокоясь об ограничениях скорости или комиссиях. Создание ончейна с помощью TPS 15 не приведет к массовому внедрению криптовалюты. Благодаря SVM и Sealevel Solana может (уже) обрабатывать тысячи транзакций без перегрузок и значительных комиссий за газ, что делает ее идеальной средой для создания новых приложений. По мере совершенствования аппаратного обеспечения валидатора среда выполнения Solana Sealevel сможет обрабатывать больше транзакций параллельно, увеличивая разрыв между SVM и EVM и одновременно привлекая больше пользователей.
Squads будет поддерживать расширения виртуальной машины Solana (SVM) и предоставлять возможности мультиподписи (multisign) для всей экосистемы SVM, что позволит любому управлять цепочкой, используя лучшую среду выполнения блокчейна и лучший опыт самостоятельного хостинга активов.
