📢 Основы Steem: система ресурсных кредитов для начинающих


Сегодня мы хотели бы поговорить о системе ресурсных кредитов Steem (Steem’s Resource Credit system), которая помогает Steem оставаться самым передовым, устойчивым и масштабируемым блокчейном фримиум-модели в мире. Если говорить коротко, то каждое производящееся в блокчейне действие потребляет ресурсы, а это означает, что у него есть стоимость. Система кредитования ресурсов Steem – это современная рыночная система, способная гарантировать устойчивость и масштабируемость количества потребляемых пользователями ресурсов, при этом требуя от потребителей большего объема ресурсов большей вовлеченности в проект. И тогда как подобного рода решения делают Steem еще более продвинутым, эта новая система также включает революционную для блокчейна функцию, которую не смог реализовать ни один другой чейн: возможность для любой заинтересованной стороны создавать бесплатные аккаунты со способностью проведения транзакций.

Блокчейн модели “фримиум”

Причина, по которой мы называем Steem блокчейном модели фримиум (freemium, условно-бесплатным), заключается в том, что с пользователей не взимается плата за проводимые ими транзакции. Вообще. Вместо этого хранение Steem (в форме Steem Power) дает им возможность выполнять определенное количество действий, таких как создание постов и комментариев, голосование и перевод токенов. Они приобрели “долю” технологии, а вместе с ней и привилегию “бесплатного” выполнения некоторых видов действий. Это означает, что разработчики, создающие приложения на блокчейне Steem, не должны платить сборы или заставлять своих пользователей платить комиссию всякий раз, когда кто-либо пользуется их приложением. В сочетании с 3 секундами, необходимыми для создания блока Steem, получается пользовательский опыт, сопоставимый с тем, к которому привыкли пользователи интернета, однако также обладающий преимуществами блокчейна и криптовалютной платформы.

Устранение “раздувания”

Система ресурсных кредитов работает “под капотом”, определяя доступное количество пользовательских действий в стабильно децентрализованном автономном режиме. Поскольку эта система предназначена для регулирования потребления ресурсов в фоновом режиме, пользователям не обязательно иметь никакого представления о том, как она работает: вместо этого они могут просто наслаждаться Steem–приложениями. Это означает, что потребители получат позитивный опыт, а система гарантирует, что они не израсходуют ресурсов больше, чем способна поддержать сеть. В блокчейн-индустрии мы называем чрезмерное потребление сетевых ресурсов “раздуванием”, и пока эту проблему эффективно решили единицы протоколов, если не меньше. Система кредитования ресурсов устраняет саму возможность раздувания в Steem, но это лишь одна из причин, позволяющая чейну быть столь передовым.

Steemit: вход в мир криптовалют

Для того, чтобы понять систему ресурсных кредитов, важно сначала упомянуть, что Steem является первым в мире децентрализованным ПО фримиум-модели. Во время разработки архитектуры Steem нашей главной мотивацией было создание протокола, который бы познакомил с технологией блокчейн и криптовалютами как можно большее число людей. Для достижения этой цели мы анализировали данные новых бизнес-моделей, возникших на волне интернет-революции и позволившие маленьким стартапам потеснить крупных игроков. Google, Facebook, Twitter и Reddit добились быстрого роста и признания, предлагая ряд бесплатных сервисов, что позволило им закрепить за собой столь ценное сообщество пользователей.

Сохранение децентрализации

Мы стремились задать подобную динамику во время проектирования Steem, ставя своей целью знакомство как можно большего количества людей с этими революционными технологиями. В то же время мы понимали, что реальная ценность этих технологий основана на децентрализации, которая способна вернуть этим пользователям контроль над их личной информацией и интернет-сообществами. Смысл заключался в том, чтобы предложить им такой интернет-опыт, на контроль над которым не смогла бы посягать ни одна организация.

Но каждая из ранее созданных фримиум-моделей управляется централизованной организацией, произвольно решающей, что должно быть бесплатным, а что – стоить денег. Инициируемый ими процесс не является открытым, прозрачным или доказуемо справедливым, хотя он эффективен, поскольку его математика очень проста: предоставлять дешевый сервис бесплатно и взимать плату за более дорогой. В такой децентрализованной системе, как Steem, такой вариант невозможен и нежелателен.

Пропускная способность: сначала блокчейн

Steem должен был отличаться от своих централизованных предшественников, поэтому мы разработали первую в своем роде модель “пропускной способности” для управления потреблением ресурсов блокчейна. Эта система работала посредством предоставления каждому держателю Steem “пропускной способности” в соответствии с количеством принадлежащей ему Steem Power. Люди даже не знали о том, что используют эту пропускную способность, совершая различные транзакции в Steem.

Объем пропускной способности, соответствующий аккаунту, меняется в зависимости от общего объема использования сети. Блокчейн будет смотреть на объем внутрисетевого трафика и в режиме реального времени регулировать количество используемой пользователями пропускной способности и, как следствие, способность и неспособность совершать транзакции. Целью этого алгоритма являлось постоянное поддержание достаточного количества свободного места внутри блоков (основной “единицы хранения” блокчейна) с учетом вероятности возникновения всплеска потребления в любой момент. Это должно было гарантировать, что каждая отправленная транзакция будет включена в текущий блок. Но это также означало, что владелец меньшей доли из раза в раз не мог быть уверен в том, что его пост будет опубликован.

Децентрализованное регулирование чрезмерного потребления

В те моменты, когда трафик был особенно высок, количество транзакций, отправляемых в блокчейн, также становилось высоким, и степень заполненности каждого блока возрастала. Когда блок становится заполненным, это означает, что в него больше нельзя добавить транзакции. Если такое произойдет, то пользователи начнут видеть, как их попытки постить, голосовать или осуществлять переводы будут откладываться до момента создания нового блока с достаточным количеством свободного места. Мы наблюдали, как это случилось в сети Ethereum вскоре после запуска Cryptokitties.

Урок CryptoKitties

Увеличение использования, подобное случившемуся в Ethereum, не доставило бы Steem никаких проблем, но для Ethereum это увеличение было настолько резким, что все его блоки оказались заполненными на протяжении многих часов, и это означало, что никто не мог использовать их блокчейн в течение всего этого времени. Несмотря на первоначальный успех, этот негативный пользовательский опыт привел к быстрому снижению уровня использования приложения Cryptokitties, число пользователей которого теперь составляет лишь 300 пользователей в день.

Для протокола, построенного с нуля с целью поддержания работы повседневных веб-приложений, такой пользовательский опыт является неприемлемым. Алгоритм пропускной способности был разработан для децентрализованного ограничения способности массы людей заполнять блоки. Он пресекает попытки пользователей отправить чрезмерное количество транзакций, но в то же время дает им возможность совершить транзакцию, если они хотят приобрести себе большую долю (проявить большую вовлеченность в проект, что добавит им пропускной способности).

Наиболее важным и революционным аспектом этой системы является то, что она остается децентрализованной и обеспечивает определенный набор действий бесплатно. Это резко контрастирует с протоколами наподобие Ethereum, требующими, чтобы все пользователи платили за любое действие, производимое ими в блокчейне. Неважно, что у вас есть $1 000 000 в ETH или что вычислительная нагрузка транзакции является мизерной – вы должны заплатить. Эту систему можно обозначить как “Pay-to-Play” (“плати, чтобы играть”), тогда как Steem – это “Stake-to-Play” (“какая доля – такая игра”).

Преимущества и недостатки системы распределения пропускной способности

Преимущество этой системы заключается в том, что ее работа не является сильно затратной для блокчейна. Одной из важнейших установок при проектировании таких систем является обеспечение условий, при которых сама система не потребляет слишком много сетевых ресурсов, иначе она только увеличит расходы на содержание сети. В соответствии с этим критерием размер транзакции оставался довольно большим. К сожалению, он отнюдь не был оптимален, т.е. получалось что пользователи, которые выполняли низкозатратные операции, активно субсидировали всех пользователей, выполнявших высокозатратные операции. Такой дисбаланс был скрыт тем фактом, что размеры транзакций оставались одинаковыми для всех.

Пример

Мы можем обнаружить один из примеров такого дисбаланса и его возможных последствий, если посмотрим на то, как блокчейн обрабатывал “Подписки” по сравнению с “Трансферами”. В рамках модели пропускной способности подписка недооценивалась по той причине, что вычислительные затраты блокчейна на ее выполнение проявлялись лишь с течением времени. В то же время стоимость трансфера была сильно завышена, поскольку в момент его выполнения требовалось много ресурсов, а с течением времени – больше никаких. Тем не менее в модели пропускной способности трансфер токенов был в 24 раза дороже, чем подписка, потому как размер транзакции был настолько больше. И если мы преследуем цель сделать Steem как можно более доступным и недорогим, подобная неверная оценка значительно повлияет на нашу способность ее достичь.

Знакомство с ресурсными кредитами (RC, Resource Credits)

И хотя эта система хорошо функционировала на протяжении первых 2 лет с момента запуска Steem и помогла ему достичь отметки в 1+ млн пользователей и 60 000 активных аккаунтов, ежедневно производящих транзакции, она была недостаточно функциональна, чтобы поддерживать масштабирование, необходимое для массового принятия продукта. Виной тому были ее вышеупомянутые недостатки и непредсказуемость пользовательского опыта, вытекающая из проектных решений, изначально встроенных в данную систему.

Улучшенный UX

Одна из проблем, связанная с системой пропускной способности и серьезно затрудняющая пользовательский опыт, заключалась в том, что пропускная способность менялась в соответствии с изменениями в сетевом трафике. Когда сетевой трафик и потребление ресурсов были высокими, пользователи с малым количеством пропускной способностью попросту не могли осуществлять транзакции. Когда трафик оказывался низким, их способность выполнять транзакции спонтанно восстанавливалась. Проблема заключалась в том, что по своей сути трафик практически непредсказуем, а следовательно набор ваших возможностей был столь же непредсказуем.

Система ресурсных кредитов полностью изменила эту динамику. Пользовательские RC (Resource Credits) больше не настраиваются динамически на основе трафика. Если в данную минуту у вас есть 10RC, то в следующую минуту у вас по-прежнему будет 10RC. Благодаря такому новшеству пользователи получили возможность в точности видеть объем действий, которые они могут совершить в блокчейне в любой из моментов, несмотря на присущую трафику непредсказуемость. Алгоритм, управляющий системой, призван обеспечивать плавность изменений, чтобы пользовательский опыт не сильно менялся с течением времени.

Кроме того, благодаря умению новой системы распределения ресурсов предоставлять разработчикам более детальную информацию о количестве ресурсов, которое будет потреблять каждая транзакция, они могут создавать всё более предсказуемый пользовательский опыт. Этого можно достичь путем создания интерфейсов, позволяющих пользователям точно видеть, какое количество каких именно транзакций они могут выполнить в соответствии с количеством имеющейся у них Steem Power, если предположить, что им нужна эта дополнительная информация.

Эффективное ценообразование

Второе важное преимущество новой системы RC заключается в том, что она делает Steem еще более масштабируемым за счет решения проблемы неэффективного ценообразования в сфере ресурсов, возникшей из изначальной системы пропускной способности. Система ресурсных кредитов устраняет эту проблему путем учета большего количества параметров потребления ресурсов. Большее количество параметров, тесно коррелирующих с реальным потреблением ресурсов, дает возможность проводить более точное ценообразование.

3 новых параметра измерения

Вместо того, чтобы учитывать только размер транзакции, система ресурсных кредитов измеряет размер блокчейна (насколько транзакция увеличит блокчейн), размер состояния (сколько еще информации будет храниться в памяти) и время вычисления (какую вычислительную нагрузку транзакция даст на сеть). На основе этих трех параметров протокол наполняет "пулы" ресурсов, и уже оттуда происходит распределение RC (или т.н. “resource_mana”) между пользователями Steem. В периоды особо высокой нагрузки на сеть пулы ресурсов будут относительно пустыми, поэтому пользователям будет выдаваться меньшее количество RC. В периоды, когда использование сети будет особенно низким, пулы ресурсов будут относительно полными, следовательно пользователям будет выдано больше RC.

Пресечение злоупотреблений

Это также означает, что, как и в случае с пропускной способностью, пользователь, пытающийся выполнить слишком много ресурсозатратных транзакций, не будет допущен до проведения транзакции, пока не обзаведется большим количеством Steem Power. В итоге результат фактически останется прежним: децентрализованная система, которая позволяет пользователям выполнять определенное количество транзакций бесплатно, но требует, чтобы они либо ждали, либо приобретали больше Steem Power, если хотят потреблять дополнительные сетевые ресурсы.

Как и старая система пропускной способности, система ресурсных кредитов полностью функционирует “под капотом”. Она не требует никакого сознательного внимания со стороны пользователей, что соответствует нашему руководящему принципу – устранять преграды и снижать когнитивную нагрузку на пользователей. Основными задачами были улучшение пользовательского опыта для среднего пользователя и более точное ценообразование, а дополнительным преимуществом этой системы стало то, что она создает абсолютно новые возможности для продвинутых пользователей, которые желают получить дополнительную информацию о том, как использовать систему максимально эффективно.

Бесплатное создание аккаунтов

Возможно, одним из самых недооцененных преимуществ системы RC является то, что впервые в истории она делает возможным по-настоящему бесплатное создание аккаунта для владельца любой доли. Впервые люди могут получить совершенно новый аккаунт и начать осуществлять транзакции, не выполняя для этого работу или не приобретая дополнительную долю. Многочисленные приложения, такие как steemmonsters.com, уже используют эту возможность для привлечения новых пользователей в своё dApp без каких-либо затрат. Это большой скачок вперед в создании приложений на базе блокчейна, которые имеют максимально низкий входной порог; и пока с этим способен справиться только Steem.

Новые идеи

Теперь, когда система RC уже работает на просторах платформы, она предоставляет каждому разработчику Steem совершенно новую и ценную информацию о том, как ресурсы потребляются сетью Steem. Поскольку RC использует для поддержки рыночной системы большее количество измерений, которые становятся всё более точными, в итоге мы получаем высокоинтеллектуальный механизм управления фримиум-моделью Steem, каждый бит которой столь же децентрализован, как и замещаемая ею схема.

Ускоренная эволюция

Наконец, эта система предназначена для обеспечения Steem-разработчикам возможности добавлять в вычисления новые метрики ресурсов без необходимости полного обновления системы (т.е. “хардфорка”) и с возможностью быстрого устранения неточностей в ценах, вроде тех, что мы получали в результате изменений в предыдущей системе. И тогда как Steem со своими 20 хардфорками за 2 года, вероятно, является самым быстро развивающимся блокчейном в мире, система RC позволит нам дополнительно ускорить темп его роста.

Вот почему мы называем Steem “самым передовым” блокчейном модели фримиум и считаем, что теперь он способен масштабироваться до качественно нового уровня.

  • Команда Steemit

Переведено @blockchained

Оригинал поста: ЗДЕСЬ


Если вам нравится то, что мы делаем - поддержите делегата blockchained в сети Steem


Телеграм чат: https://t.me/steemit


Загрузите десктопное приложение с открытым исходным кодом RuDex


Вы можете торговать токенами STEEM/SBD на RuDEX с 0% торговой комиссией


Comments 3


спасибо за перевод. в оригинале не осилила бы. интересные вещи в стиме происходят, однако. по логике, токен должен взлетать. а он что-то не очень (

14.12.2018 01:49
0