Почему люди до сих пор не используют биткоин повсеместно? Например, чтобы покупать молоко в магазине. В основном потому, что до недавнего времени в сети биткоин можно было выполнить лишь 7 транзакций в секунду. В Bitcoin Cash — 60 транзакций в секунду. А в Visa — 24,000. Большинство людей на планете просто остались бы без молока. На текущий момент, есть решения второго уровня, такие как Lightning Network, которые позволяют на порядки повысить скорость выполнения транзакций, но при этом лишают блокчейн некоторых его важных преимуществ, таких, например, как безопасность.
Скорость выполнения транзакций — это одна из самых острых технических проблем технологий распределенного реестра, в том числе блокчейна. Поэтому так много внимания привлекают новые проекты, которые обещают решить эту проблему и дать миру действительно высокопроизводительную DLT. Это Zilliqa, Nano, Hashgraph и многие другие. В основе предлагаемых решений проблемы, ограничивающей производительность, часто лежат новые алгоритмы консенсуса, шардинга и другие идеи. Однако, какими бы многообещающими эти идеи не были, они остаются гипотезами, до тех пор пока не будут протестированы в реальной распределенной среде.
Мы в Перфоманс Лаб никогда не доверяли теоретическим расчетам производительности ИТ-системы, которые делают даже очень уважаемые вендоры. Были десятки проектов по нагрузочному тестированию, которые разбивали в пух и прах такие расчеты и, в конечном счете, укрепили инженеров по производительности в том, что только тестирование в условиях максимально приближенных к реальным, дает ответ на вопрос — какова же реальная производительность системы?
Это касается и блокчейна — чтобы узнать, как быстро будут выполняться транзакции в DLT сети, вам нужна такая сеть. Я имею в виду, что вам понадобится сеть из 10,000 распределенных узлов блокчейна, чтобы узнать с какой скоростью будут выполняться транзакции в сети такого размера. Если в сети применяется шардинг, то нужно тестировать и latency и TPS внутри шарда на том количестве узлов, которое ожидается в шарде. Но как это сделать? Либо авторам перспективного блокчейн-проекта придется ждать, когда их сеть вырастет до 10,000 узлов (и шард до 1000) и тогда измерить ее производительность, пытаясь решать проблемы по мере их возникновения (таким решением в случае биткоина, например, стало появляение Bitcoin Cash), либо найти технологию, которая позволит провести валидное тестирование производительности.
DQN: DLT Testing
Такая технология в настоящий момент разрабатывается в Перфоманс Лаб и является частью платформы Digital Quality Network (DQN). DQN — это децентрализованная сеть, состоящая из людей и устройств. Люди могут принимать участие в различных проектах по тестированию. Некоторые виды тестирования требуют от людей личного участия, а некоторые, такие как DLT-тестирование, всего лишь выделения ресурсов компьютера для проведения автоматических тестов. Участники тестирования вознаграждаются криптовалютой за выполнение тестов.
С точки зрения проекта, который хочет протестировать свой блокчейн — DQN — это ботнет, на каждый их узлов которого можно загрузить и запустить узел блокчейна, тем самым воссоздав реальные условия работы блокчейна в будущем. Конечно, в такой среде можно провести множество тестов:
- как много транзакций в секунду может выполняться в DLT с приемлемой скоростью?
- как зависит время выполнения транзакции от числа узлов сети/шарда и количества транзакций в моменте?
- нагрузочное тестирование dApp внутри любого DLT (эмуляция большого количества пользователей)
- тестирование алгоритма консенсуса в различных состояниях сети
и другие виды тестирования.
В будущем, мы будем информировать вас о текущем состоянии DQN, а пока мы создали новый телеграм-канал — вы можете подписаться на новости проекта. Если вы заинтересованы в тестировании производительности своего блокчей-проекта — напишите нам о нем, и мы обязательно ответим.