Всемирное толкование параллельного EVM: как преодолеть последовательность и突破ить瓶颈 производительности Блокчейн?
Производительность стала узким местом для дальнейшего развития Блокчейн-индустрии. Блокчейн-сеть создала новую децентрализованную основу доверия для физических и юридических лиц при проведении транзакций.
Первая поколение Блокчейн-сетей, представляемая Биткойном, открыла новую модель децентрализованных электронных валютных транзакций с помощью распределенного учета, революционно начав новую эру. Вторая поколение Блокчейн-сетей, представленная Эфириумом, полностью использует воображение и предлагает реализацию децентрализованных приложений (dApp) с помощью распределенной машины состояний.
С тех пор блокчейн-сеть начала свою историю стремительного развития, продолжающегося более десяти лет, от инфраструктуры Web3 до различных направлений, таких как DeFi, NFT, социальные сети и GameFi, что привело к появлению множества инноваций как в технологиях, так и в бизнес-моделях. Процветание отрасли требует постоянного привлечения новых пользователей для участия в экосистеме децентрализованных приложений, что, в свою очередь, предъявляет более высокие требования к опыту использования продукта.
Web3 как новая форма продукта, "не имеющая аналогов в прошлом", должен не только внедрять инновации для удовлетворения потребностей пользователей (функциональные требования), но и учитывать, как достичь баланса между безопасностью и производительностью (нефункциональные требования). С момента своего появления были предложены различные решения, пытающиеся решить проблемы производительности.
Эти решения можно условно разделить на две категории: одна категория — это решения по расширению на блокчейне, такие как шардирование (sharding) и направленный ациклический граф (DAG); другая категория — это решения по расширению вне блокчейна, такие как Plasma, сеть Lightning, побочные цепи и Rollups. Но этого все еще далеко не хватает, чтобы угнаться за быстрым ростом транзакций на блокчейне.
Особенно после опыта лета DeFi в 2020 году и постоянного всплеска надписей в экосистеме биткойна в конце 2023 года, индустрии срочно нужны новые решения для повышения производительности, чтобы соответствовать требованиям "высокой производительности и низких затрат". Параллельные Блоки возникли именно на таком фоне.
Обзор нарратива параллельного EVM
Параллельное повествование EVM обозначает формирование конкурентного ландшафта в области параллельных Блокчейнов с двумя сильными игроками. Обработка транзакций в Ethereum является последовательной, транзакции должны выполняться по очереди, что приводит к низкой эффективности использования ресурсов. Если изменить последовательный способ обработки на параллельный, это приведет к значительному увеличению производительности.
Конкуренты Ethereum, такие как Solana, Aptos и Sui, обладают встроенной параллельной обработкой и имеют неплохую экосистему, рыночная капитализация их токенов составляет 45 миллиардов, 3,3 миллиарда и 1,9 миллиарда долларов соответственно. Они образуют параллельный не-EVM лагерь. В ответ на вызовы экосистема Ethereum также не собирается отступать, и многие проекты выступают за усиление EVM, образуя параллельный EVM лагерь.
Некоторая торговая платформа в своем предложении по обновлению версии v2 громко заявила, что станет "первым параллельным EVM Блокчейном", текущая рыночная капитализация составляет 2,1 миллиарда долларов, ожидается еще больший рост. На данный момент параллельный EVM новый публичный блокчейн Monad, который пользуется большим интересом со стороны капитала, также не следует недооценивать. А публичный блокчейн L1 Canto с рыночной капитализацией 170 миллионов долларов и бесплатной общественной инфраструктурой также объявил о своем предложении по обновлению параллельного EVM.
Кроме того, несколько L2 проектов, находящихся на ранней стадии, также предлагают повышение производительности через интеграцию возможностей различных L1 цепей. За исключением Neon, который достиг рыночной капитализации в 69 миллионов долларов, другие проекты еще не имеют соответствующих данных. Уверен, в будущем появится больше L1 и L2 проектов, присоединившихся к параллельной Блокчейн битве.
Не только параллельная EVM-нарратив имеет большой потенциал для роста на рынке, но и сектор параллельных блокчейнов, к которому принадлежит параллельная EVM-нарратив, также имеет большой потенциал для роста на рынке, поэтому перспективы рынка обширны.
На данный момент общая рыночная капитализация L1 и L2 составляет 7521,23 миллиарда долларов США, а рыночная капитализация параллельных Блокчейнов составляет 525,39 миллиарда долларов США, что составляет всего около 7%. При этом рыночная капитализация связанных с EVM параллельных проектов составляет 23,39 миллиарда долларов США, что составляет лишь 4% от рыночной капитализации параллельных Блокчейнов.
! [Интерпретация параллельного EVM в 10 000 слов: за пределами последовательного интерфейса, как преодолеть узкое место производительности блокчейна?] ](https://img-cdn.gateio.im/webp-social/moments-c1724bb9cbb64ad2c8cf437c4c8b42c1.webp)
Категория параллельных проектов EVM
В отрасли обычно выделяют 4 уровня структуры Блокчейн-сети:
Уровень 0 (Сеть): Блокчейн-сетевой уровень, обрабатывающий базовые сетевые коммуникационные протоколы
Уровень 1 (инфраструктура): децентрализованная сеть, полагающаяся на различные механизмы согласования для проверки транзакций
Уровень 2 (расширение): полагается на различные протоколы второго уровня, основанные на уровне 1, и направлен на решение различных ограничений уровня 1, особенно проблем масштабируемости.
Уровень 3 (Приложение): зависит от Уровня 2 или Уровня 1, используется для создания различных децентрализованных приложений (dApp)
Параллельные EVM-нарративные проекты в основном делятся на монолитные блокчейны и модульные блокчейны, при этом монолитные блокчейны подразделяются на L1 и L2. Судя по общему количеству проектов и развитию нескольких основных направлений, экосистема параллельных EVM L1 публичных блокчейнов по сравнению с экосистемой Ethereum все еще имеет большие возможности для развития.
В DeFi-секторе есть требование к "высокой скорости и низким комиссиям", в игровом секторе – к "сильной интерактивности в реальном времени". Оба сектора предъявляют определенные требования к скорости выполнения. Параллельный EVM, безусловно, обеспечит этим проектам лучший пользовательский опыт и продвинет развитие отрасли на новый уровень.
L1 — это новая публичная цепочка с встроенной способностью параллельного выполнения, представляющая собой высокопроизводительную инфраструктуру. В этой категории L1 проекты, такие как Sei v2, Monad и Canto, самостоятельно разрабатывают параллельный EVM, совместимый с экосистемой Ethereum и обеспечивающий высокопроизводительную обработку транзакций.
L2, объединяя возможности других L1 цепей, предоставляет возможности масштабирования для межэкосистемного сотрудничества и является ярким примером rollup. В этой категории L2, Neon является EVM-симулятором на сети Solana, а Eclipse использует Solana для выполнения транзакций, но осуществляет расчеты на EVM. Lumio похож на Eclipse, только уровень выполнения заменен на Aptos.
Помимо упомянутых выше монолитных решений Блокчейн, Fuel предложил свою концепцию модульного Блокчейн. Во втором выпуске он позиционирует себя как операционную систему rollup для Ethereum, предлагая более гибкие и полные возможности модульного выполнения.
Fuel сосредоточен на выполнении транзакций, передавая остальные операции одному или нескольким независимым уровням Блокчейн, что позволяет достичь более гибкой комбинации: он может быть как L2, так и L1, а также боковой цепью или каналом состояния. В настоящее время в экосистеме Fuel насчитывается 17 проектов, в основном сосредоточенных в трех областях: DeFi, NFT и инфраструктура.
Однако только Orally кросс-чейн оракул был введен в практическое применение. Децентрализованная платформа кредитования Swaylend и платформа торговых вечных контрактов SPARK запущены в тестовой сети, другие проекты все еще находятся в разработке.
! [Интерпретация параллельного EVM в 10 000 слов: за пределами последовательного интерфейса, как преодолеть узкое место производительности блокчейна?] ](https://img-cdn.gateio.im/webp-social/moments-e9cd714bba886918acc4f8141c1d3f4c.webp)
Принципы технологии параллельного EVM
Чтобы реализовать децентрализованное выполнение сделок, Блокчейн сеть должна выполнять 4 обязанности:
Выполнение: выполнение и проверка транзакций
Доступность данных: распределение новых блоков по всем узлам блокчейна
Механизм согласия: верификация блока, достижение согласия
Расчет: расчет и запись окончательного состояния сделки
Параллельный EVM в основном представляет собой оптимизацию производительности уровня исполнения. Это делится на два типа решений: решения уровня сети (L1) и решения второго уровня сети (L2). Решения L1 вводят механизм параллельного выполнения транзакций, позволяя транзакциям максимально параллельно выполняться в виртуальной машине. Решения L2 по сути используют уже параллелизированную L1 виртуальную машину для достижения определенной степени "вне цепи выполнение + на цепи расчет".
Поэтому, чтобы понять технологические принципы параллельного EVM, необходимо разобрать их на составные части: сначала понять, что такое виртуальная машина (virtual machine), а затем понять, что такое параллельное выполнение (parallel execution).
Виртуальная машина
В компьютерных науках виртуальная машина относится к виртуализации или эмуляции компьютерной системы.
Виртуальные машины делятся на два типа: один называется системной виртуальной машиной (system virtual machine), которая может виртуализировать одну физическую машину в несколько машин, запускающих несколько операционных систем, тем самым увеличивая эффективность использования ресурсов. Другой называется виртуальной машиной процесса (process virtual machine), которая предоставляет абстракцию для некоторых высокоуровневых языков программирования, позволяя компьютерным программам, написанным на этих языках, работать на различных платформах в независимом от платформы формате.
JVM — это процессорная виртуальная машина, разработанная для языка программирования Java. Программы, написанные на языке Java, сначала компилируются в байт-код Java (в виде двоичного кода промежуточного состояния), который интерпретируется и выполняется JVM: JVM передает байт-код интерпретатору, который переводит его в машинный код для разных машин, а затем выполняет на машине.
Блокчейн виртуальная машина является одной из процессорных виртуальных машин. В контексте блокчейна виртуальная машина относится к виртуализации распределенной машины состояний, используемой для распределенного выполнения контрактов и запуска dApp. Аналогично JVM, EVM является процессорной виртуальной машиной, разработанной для языка Solidity, где смарт-контракты сначала компилируются в байт-код opcode, а затем интерпретируются и выполняются EVM.
Новые публичные блокчейны, помимо Эфириума, при реализации своих виртуальных машин чаще всего используют виртуальные машины на основе байт-кода WASM или eBPF. WASM - это формат байт-кода, который имеет небольшой размер, быстро загружается, портативен и основан на механизме безопасности песочницы. Разработчики могут использовать различные языки программирования (C, C++, Rust, Go, Python, Java и даже TypeScript и др.) для написания смарт-контрактов, а затем компилировать их в байт-код WASM и выполнять. Смарт-контракт, выполняющийся на одном из публичных блокчейнов, использует именно этот формат байт-кода.
eBPF является предшественником BPF (Berkeley Packet Filter, Берклиский фильтр пакетов), который изначально использовался для эффективной фильтрации сетевых пакетов, а затем эволюционировал в eBPF, предоставляющий более богатый набор инструкций.
Это революционная технология, которая позволяет динамически вмешиваться в ядро операционной системы и изменять его поведение без изменения исходного кода. Позже эта технология вышла из ядра и развилась в пользовательский eBPF runtime, который обладает высокой производительностью, безопасностью и портативностью. Умные контракты, выполняемые на Solana, компилируются в eBPF байт-код и выполняются в ее Блокчейн сети.
А в других L1 публичных блокчейнах Aptos и Sui используют язык программирования смарт-контрактов Move, компилируя его в уникальный байт-код, который выполняется на виртуальной машине Move. Monad же самостоятельно разработал виртуальную машину, совместимую с байт-кодом EVM opcode (Shanghai fork).
! [Интерпретация параллельного EVM в 10 000 слов: за пределами последовательного интерфейса, как преодолеть узкое место производительности блокчейна?] ](https://img-cdn.gateio.im/webp-social/moments-8219961e2cf56e2dfabf5ababf7dbbe2.webp)
Параллельный механизм исполнения
Параллельное выполнение — это такая технология:
Возможность использовать преимущества многопроцессорных систем для одновременной обработки нескольких задач, увеличивая пропускную способность системы;
Убедитесь, что полученный результат транзакции полностью соответствует тому, что было бы при последовательном серийном выполнении транзакций.
В блокчейн-сетях обычно используют TPS (количество транзакций в секунду) в качестве технического показателя для оценки скорости обработки. Механизм параллельного выполнения довольно сложен и требует высокого уровня квалификации от разработчиков, объяснить его не так просто. Давайте начнем с примера "банка", чтобы объяснить, что такое параллельное выполнение.
Во-первых, что такое последовательное выполнение?
Ситуация 1: Если мы рассматриваем систему как банк, а ЦПУ, обрабатывающее задачи, как прилавок, то последовательное выполнение задач подобно тому, что в этом банке есть только один прилавок для обслуживания клиентов. В это время клиенты (задачи), приходящие в банк, могут выстраиваться в длинную очередь, ожидая своей очереди для обслуживания. Для каждого клиента работник прилавка должен повторять одни и те же действия (выполнять инструкции), чтобы обслужить клиента. Пока очередь не дойдет до клиента, он может только ждать, что приводит к увеличению времени транзакции.
Так что же такое параллельное выполнение?
Ситуация 2: В это время банк увидел, что людей слишком много, и открыл несколько дополнительных касс для обработки операций. Четыре кассира одновременно обрабатывали операции, и скорость увеличилась примерно в 4 раза, поэтому время ожидания клиентов сократилось примерно до 1/4 от первоначального, что повысило скорость обслуживания в банке.
Если не сделать защиту, что произойдет, если два человека одновременно переведут деньги другому человеку?
Ситуация 3: А, B и C - три человека, у которых на счетах соответственно 2 ETH, 1 ETH и 0 ETH. Теперь A и B хотят перевести C по 0,5 ETH. В системе с последовательным выполнением транзакций никаких проблем не возникнет (левая стрелка "\u003c=" обозначает чтение реестра, правая стрелка "=\u003e" обозначает запись в реестр, и так далее):
A.transfer(C, 0.5):
A <= 2
A => 1.5
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
16 Лайков
Награда
16
5
Поделиться
комментарий
0/400
MrDecoder
· 07-30 10:12
Параллельность — это будущее
Посмотреть ОригиналОтветить0
gas_fee_trauma
· 07-30 10:12
еще нужно смотреть на Газ
Посмотреть ОригиналОтветить0
HodlOrRegret
· 07-30 10:11
Дорога впереди светла, но полна препятствий.
Посмотреть ОригиналОтветить0
FlashLoanPrince
· 07-30 10:07
Параллелизм действительно является будущим
Посмотреть ОригиналОтветить0
GasGuzzler
· 07-30 10:03
Обязательно посмотрите, хорошая статья с ценными идеями.
Параллельный EVM: преодоление узких мест производительности и открытие новой эры Web3
Всемирное толкование параллельного EVM: как преодолеть последовательность и突破ить瓶颈 производительности Блокчейн?
Производительность стала узким местом для дальнейшего развития Блокчейн-индустрии. Блокчейн-сеть создала новую децентрализованную основу доверия для физических и юридических лиц при проведении транзакций.
Первая поколение Блокчейн-сетей, представляемая Биткойном, открыла новую модель децентрализованных электронных валютных транзакций с помощью распределенного учета, революционно начав новую эру. Вторая поколение Блокчейн-сетей, представленная Эфириумом, полностью использует воображение и предлагает реализацию децентрализованных приложений (dApp) с помощью распределенной машины состояний.
С тех пор блокчейн-сеть начала свою историю стремительного развития, продолжающегося более десяти лет, от инфраструктуры Web3 до различных направлений, таких как DeFi, NFT, социальные сети и GameFi, что привело к появлению множества инноваций как в технологиях, так и в бизнес-моделях. Процветание отрасли требует постоянного привлечения новых пользователей для участия в экосистеме децентрализованных приложений, что, в свою очередь, предъявляет более высокие требования к опыту использования продукта.
Web3 как новая форма продукта, "не имеющая аналогов в прошлом", должен не только внедрять инновации для удовлетворения потребностей пользователей (функциональные требования), но и учитывать, как достичь баланса между безопасностью и производительностью (нефункциональные требования). С момента своего появления были предложены различные решения, пытающиеся решить проблемы производительности.
Эти решения можно условно разделить на две категории: одна категория — это решения по расширению на блокчейне, такие как шардирование (sharding) и направленный ациклический граф (DAG); другая категория — это решения по расширению вне блокчейна, такие как Plasma, сеть Lightning, побочные цепи и Rollups. Но этого все еще далеко не хватает, чтобы угнаться за быстрым ростом транзакций на блокчейне.
Особенно после опыта лета DeFi в 2020 году и постоянного всплеска надписей в экосистеме биткойна в конце 2023 года, индустрии срочно нужны новые решения для повышения производительности, чтобы соответствовать требованиям "высокой производительности и низких затрат". Параллельные Блоки возникли именно на таком фоне.
Обзор нарратива параллельного EVM
Параллельное повествование EVM обозначает формирование конкурентного ландшафта в области параллельных Блокчейнов с двумя сильными игроками. Обработка транзакций в Ethereum является последовательной, транзакции должны выполняться по очереди, что приводит к низкой эффективности использования ресурсов. Если изменить последовательный способ обработки на параллельный, это приведет к значительному увеличению производительности.
Конкуренты Ethereum, такие как Solana, Aptos и Sui, обладают встроенной параллельной обработкой и имеют неплохую экосистему, рыночная капитализация их токенов составляет 45 миллиардов, 3,3 миллиарда и 1,9 миллиарда долларов соответственно. Они образуют параллельный не-EVM лагерь. В ответ на вызовы экосистема Ethereum также не собирается отступать, и многие проекты выступают за усиление EVM, образуя параллельный EVM лагерь.
Некоторая торговая платформа в своем предложении по обновлению версии v2 громко заявила, что станет "первым параллельным EVM Блокчейном", текущая рыночная капитализация составляет 2,1 миллиарда долларов, ожидается еще больший рост. На данный момент параллельный EVM новый публичный блокчейн Monad, который пользуется большим интересом со стороны капитала, также не следует недооценивать. А публичный блокчейн L1 Canto с рыночной капитализацией 170 миллионов долларов и бесплатной общественной инфраструктурой также объявил о своем предложении по обновлению параллельного EVM.
Кроме того, несколько L2 проектов, находящихся на ранней стадии, также предлагают повышение производительности через интеграцию возможностей различных L1 цепей. За исключением Neon, который достиг рыночной капитализации в 69 миллионов долларов, другие проекты еще не имеют соответствующих данных. Уверен, в будущем появится больше L1 и L2 проектов, присоединившихся к параллельной Блокчейн битве.
Не только параллельная EVM-нарратив имеет большой потенциал для роста на рынке, но и сектор параллельных блокчейнов, к которому принадлежит параллельная EVM-нарратив, также имеет большой потенциал для роста на рынке, поэтому перспективы рынка обширны.
На данный момент общая рыночная капитализация L1 и L2 составляет 7521,23 миллиарда долларов США, а рыночная капитализация параллельных Блокчейнов составляет 525,39 миллиарда долларов США, что составляет всего около 7%. При этом рыночная капитализация связанных с EVM параллельных проектов составляет 23,39 миллиарда долларов США, что составляет лишь 4% от рыночной капитализации параллельных Блокчейнов.
! [Интерпретация параллельного EVM в 10 000 слов: за пределами последовательного интерфейса, как преодолеть узкое место производительности блокчейна?] ](https://img-cdn.gateio.im/webp-social/moments-c1724bb9cbb64ad2c8cf437c4c8b42c1.webp)
Категория параллельных проектов EVM
В отрасли обычно выделяют 4 уровня структуры Блокчейн-сети:
Параллельные EVM-нарративные проекты в основном делятся на монолитные блокчейны и модульные блокчейны, при этом монолитные блокчейны подразделяются на L1 и L2. Судя по общему количеству проектов и развитию нескольких основных направлений, экосистема параллельных EVM L1 публичных блокчейнов по сравнению с экосистемой Ethereum все еще имеет большие возможности для развития.
В DeFi-секторе есть требование к "высокой скорости и низким комиссиям", в игровом секторе – к "сильной интерактивности в реальном времени". Оба сектора предъявляют определенные требования к скорости выполнения. Параллельный EVM, безусловно, обеспечит этим проектам лучший пользовательский опыт и продвинет развитие отрасли на новый уровень.
L1 — это новая публичная цепочка с встроенной способностью параллельного выполнения, представляющая собой высокопроизводительную инфраструктуру. В этой категории L1 проекты, такие как Sei v2, Monad и Canto, самостоятельно разрабатывают параллельный EVM, совместимый с экосистемой Ethereum и обеспечивающий высокопроизводительную обработку транзакций.
L2, объединяя возможности других L1 цепей, предоставляет возможности масштабирования для межэкосистемного сотрудничества и является ярким примером rollup. В этой категории L2, Neon является EVM-симулятором на сети Solana, а Eclipse использует Solana для выполнения транзакций, но осуществляет расчеты на EVM. Lumio похож на Eclipse, только уровень выполнения заменен на Aptos.
Помимо упомянутых выше монолитных решений Блокчейн, Fuel предложил свою концепцию модульного Блокчейн. Во втором выпуске он позиционирует себя как операционную систему rollup для Ethereum, предлагая более гибкие и полные возможности модульного выполнения.
Fuel сосредоточен на выполнении транзакций, передавая остальные операции одному или нескольким независимым уровням Блокчейн, что позволяет достичь более гибкой комбинации: он может быть как L2, так и L1, а также боковой цепью или каналом состояния. В настоящее время в экосистеме Fuel насчитывается 17 проектов, в основном сосредоточенных в трех областях: DeFi, NFT и инфраструктура.
Однако только Orally кросс-чейн оракул был введен в практическое применение. Децентрализованная платформа кредитования Swaylend и платформа торговых вечных контрактов SPARK запущены в тестовой сети, другие проекты все еще находятся в разработке.
! [Интерпретация параллельного EVM в 10 000 слов: за пределами последовательного интерфейса, как преодолеть узкое место производительности блокчейна?] ](https://img-cdn.gateio.im/webp-social/moments-e9cd714bba886918acc4f8141c1d3f4c.webp)
Принципы технологии параллельного EVM
Чтобы реализовать децентрализованное выполнение сделок, Блокчейн сеть должна выполнять 4 обязанности:
Параллельный EVM в основном представляет собой оптимизацию производительности уровня исполнения. Это делится на два типа решений: решения уровня сети (L1) и решения второго уровня сети (L2). Решения L1 вводят механизм параллельного выполнения транзакций, позволяя транзакциям максимально параллельно выполняться в виртуальной машине. Решения L2 по сути используют уже параллелизированную L1 виртуальную машину для достижения определенной степени "вне цепи выполнение + на цепи расчет".
Поэтому, чтобы понять технологические принципы параллельного EVM, необходимо разобрать их на составные части: сначала понять, что такое виртуальная машина (virtual machine), а затем понять, что такое параллельное выполнение (parallel execution).
Виртуальная машина
В компьютерных науках виртуальная машина относится к виртуализации или эмуляции компьютерной системы.
Виртуальные машины делятся на два типа: один называется системной виртуальной машиной (system virtual machine), которая может виртуализировать одну физическую машину в несколько машин, запускающих несколько операционных систем, тем самым увеличивая эффективность использования ресурсов. Другой называется виртуальной машиной процесса (process virtual machine), которая предоставляет абстракцию для некоторых высокоуровневых языков программирования, позволяя компьютерным программам, написанным на этих языках, работать на различных платформах в независимом от платформы формате.
JVM — это процессорная виртуальная машина, разработанная для языка программирования Java. Программы, написанные на языке Java, сначала компилируются в байт-код Java (в виде двоичного кода промежуточного состояния), который интерпретируется и выполняется JVM: JVM передает байт-код интерпретатору, который переводит его в машинный код для разных машин, а затем выполняет на машине.
Блокчейн виртуальная машина является одной из процессорных виртуальных машин. В контексте блокчейна виртуальная машина относится к виртуализации распределенной машины состояний, используемой для распределенного выполнения контрактов и запуска dApp. Аналогично JVM, EVM является процессорной виртуальной машиной, разработанной для языка Solidity, где смарт-контракты сначала компилируются в байт-код opcode, а затем интерпретируются и выполняются EVM.
Новые публичные блокчейны, помимо Эфириума, при реализации своих виртуальных машин чаще всего используют виртуальные машины на основе байт-кода WASM или eBPF. WASM - это формат байт-кода, который имеет небольшой размер, быстро загружается, портативен и основан на механизме безопасности песочницы. Разработчики могут использовать различные языки программирования (C, C++, Rust, Go, Python, Java и даже TypeScript и др.) для написания смарт-контрактов, а затем компилировать их в байт-код WASM и выполнять. Смарт-контракт, выполняющийся на одном из публичных блокчейнов, использует именно этот формат байт-кода.
eBPF является предшественником BPF (Berkeley Packet Filter, Берклиский фильтр пакетов), который изначально использовался для эффективной фильтрации сетевых пакетов, а затем эволюционировал в eBPF, предоставляющий более богатый набор инструкций.
Это революционная технология, которая позволяет динамически вмешиваться в ядро операционной системы и изменять его поведение без изменения исходного кода. Позже эта технология вышла из ядра и развилась в пользовательский eBPF runtime, который обладает высокой производительностью, безопасностью и портативностью. Умные контракты, выполняемые на Solana, компилируются в eBPF байт-код и выполняются в ее Блокчейн сети.
А в других L1 публичных блокчейнах Aptos и Sui используют язык программирования смарт-контрактов Move, компилируя его в уникальный байт-код, который выполняется на виртуальной машине Move. Monad же самостоятельно разработал виртуальную машину, совместимую с байт-кодом EVM opcode (Shanghai fork).
! [Интерпретация параллельного EVM в 10 000 слов: за пределами последовательного интерфейса, как преодолеть узкое место производительности блокчейна?] ](https://img-cdn.gateio.im/webp-social/moments-8219961e2cf56e2dfabf5ababf7dbbe2.webp)
Параллельный механизм исполнения
Параллельное выполнение — это такая технология:
В блокчейн-сетях обычно используют TPS (количество транзакций в секунду) в качестве технического показателя для оценки скорости обработки. Механизм параллельного выполнения довольно сложен и требует высокого уровня квалификации от разработчиков, объяснить его не так просто. Давайте начнем с примера "банка", чтобы объяснить, что такое параллельное выполнение.
Во-первых, что такое последовательное выполнение?
Ситуация 1: Если мы рассматриваем систему как банк, а ЦПУ, обрабатывающее задачи, как прилавок, то последовательное выполнение задач подобно тому, что в этом банке есть только один прилавок для обслуживания клиентов. В это время клиенты (задачи), приходящие в банк, могут выстраиваться в длинную очередь, ожидая своей очереди для обслуживания. Для каждого клиента работник прилавка должен повторять одни и те же действия (выполнять инструкции), чтобы обслужить клиента. Пока очередь не дойдет до клиента, он может только ждать, что приводит к увеличению времени транзакции.
Так что же такое параллельное выполнение?
Ситуация 2: В это время банк увидел, что людей слишком много, и открыл несколько дополнительных касс для обработки операций. Четыре кассира одновременно обрабатывали операции, и скорость увеличилась примерно в 4 раза, поэтому время ожидания клиентов сократилось примерно до 1/4 от первоначального, что повысило скорость обслуживания в банке.
Если не сделать защиту, что произойдет, если два человека одновременно переведут деньги другому человеку?
Ситуация 3: А, B и C - три человека, у которых на счетах соответственно 2 ETH, 1 ETH и 0 ETH. Теперь A и B хотят перевести C по 0,5 ETH. В системе с последовательным выполнением транзакций никаких проблем не возникнет (левая стрелка "\u003c=" обозначает чтение реестра, правая стрелка "=\u003e" обозначает запись в реестр, и так далее):
A.transfer(C, 0.5):