С момента запуска Ethereum в июле 2015 года и после того, как сеть начала видеть значительные сетевые эффекты, фокус сообщества Ethereum и других основных разработчиков по всему миру сместился на масштабирование.
По мере роста транзакций на Ethereum, глобальном суперкомпьютере, пользователи рассылают txns с более высокими сборами за газ, чтобы они были приоритетными. Это приводит к быстрому заполнению ограниченного блочного пространства, что приводит к «газовых войнам», которые делают транзакции на этом глобальном компьютере дорогим и медленным. Исследователи придумали много интересных способов облегчить эту проблему с помощью таких подходов, как Plasma, которые вызвали большой интерес в 2017 году. Сегодня zk Rollups, Optimistic Rollups, side-chains и решения, такие как Commit-chain Polygon, привносят огромный масштаб в Dapps и обеспечивают опыт, который невозможен несколько лет назад.
Существует много факторов, которые нужно оценить, когда дело доходит до оценки масштабируемого решения, это также зависит от вашей точки зрения: вы пользователь или разработчик? В этой статье мы постараемся посмотреть, как разработчики могут выбрать лучшее решение для масштабирования в соответствии со своими требованиями.
Платформа масштабирования Ethereum
Мы стремимся взглянуть на проблему масштабирования с глаз разработчика: какие факторы следует учитывать при выборе решения масштабирования? С точки зрения разработчика или Dapp, мы можем взглянуть на масштабирование с четырех различных точек зрения: простота разработки, безопасность, пользовательский опыт и долгосрочная осуществимость.
- Простота развития
Большой аспект того, как разработчики выбирают решение, заключается в том, как легко построить его поверх. Это включает в себя такие факторы, как среда программирования и совместимость с существующими инструментами и инфраструктурой. Например, цепочка фиксаций, такая как Polygon, предлагает 100% совместимость с EVM, что означает, что тот же код, используемый на Ethereum, может быть развернут на Polygon без каких-либо изменений в коде. Это также означает, что все существующие инструменты и инфраструктура на Ethereum совместимы с Polygon из коробки. С другой стороны, барьер входа для разработки ZK Rollups будет гораздо выше из-за изменений, необходимых в коде, и отсутствия всеобъемлющей инструментальной инфраструктуры.
- Уровень безопасности
В зависимости от цели вашего проекта, безопасность, необходимая для функций на цепочке, может варьироваться. Например, протокол DeFi может иметь миллиарды долларов, заблокированных в контрактах. В таких случаях zk и Optimistic Rollups обеспечат более высокую безопасность.
- Впечатления пользователя
Опыт конечного пользователя, который использует Dapp, является еще одним важным моментом для разработчика. Такие факторы, как то, какие операции изначально поддерживаются, и время подтверждения, связанное с транзакцией, будут определять опыт конечного пользователя при использовании Dapps. NFT или Gaming Dapp потенциально будет иметь более низкие ставки в своих контрактах на цепочку, что означает, что решение, похожее на боковую цепь/коммит-цепочку, лучше впишется бы со средней безопасностью, но лучше UX благодаря более быстрым выводам средств.
- Долгосрочные возможности
Другим критерием, на который следует обратить внимание, должна быть долгосрочная осуществимость решения. Сможет ли решение масштабироваться, когда массовое внедрение пользователей будет осуществляться?
Например, если мы посмотрим на Dapp на основе ZKR, который делает огромный объем транзакций, как будут генерироваться необходимые пруфы? Даже при параллелизме и рекурсивных доказательствах разработчику нужно было бы иметь конкретную модель того, как параллельные потоки взаимодействуют, как делятся задания и т. д., чтобы по-настоящему масштабироваться. Любое вычислительное решение для масштабирования также должно будет подумать о том, как обращаться с хранилищем. Высокий объем txn приводит к огромным объемам данных, которые в конечном итоге должны быть сохранены на Ethereum или аналогичном уровне доступности данных.
В конечном счете, важно, чтобы разработчик всегда делал этот выбор, имея в виду конечного пользователя, ищет ли пользователь безопасность, простоту использования или баланс между ними?
В ближайшем будущем мы ожидаем плавных переходов Dapp между несколькими опциями масштабирования в соответствии с требованиями, с разработками и наборами инструментов, такими как Polygon SDK. Проблемы с хранением данных на Ethereum также будут облегчены с помощью распределенных уровней доступности данных, таких как Avail и Celestia.