📢 Новости от команды Steemit: разработка Хардфорка 20 и изменения в распределении пропускной способности

in steem •  6 years ago 

В нашем предыдущем выпуске новостей от команды Steemit мы объявили, что повысили приоритетность ХФ20. С тех пор мы много работали, чтобы приблизить день релиза. В сегодняшнем посте мы рассмотрим особенно важную часть ХФ20: улучшение формулы пропускной способности блокчейна Steem.

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

Как уже упоминалось в предыдущем посте:

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

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

Чтобы решить эту проблему, мы полностью переписали систему распределения пропускной способности и создали новую, современную систему распределения ресурсов, созданную вокруг новой структуры под названием «Resource Credits» (RCs).

Эта система распределения ресурсов является первой в своем роде в блокчейн/криптовалютном пространстве и имеет все шансы стать самой продвинутой моделью «freemium» блокчейна.

Цели дизайна RC

В разработке этой новой системы пропускной способности мы ориентировались на три основные цели дизайна. Мы хотели создать систему, которая

  1. более эффективно распределяет ресурсы блокчейна;
  2. более точно измеряет истинную стоимость работы блокчейна и
  3. позволяет Steem-разработчикам создавать более предсказуемый пользовательский опыт.

Умное распределение ресурсов

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

Точная стоимость транзакции

Каждая транзакция в блокчейне Steem имеет связанную с ней “стоимость”, обусловленную тем, сколько ресурсов блокчейна она потребляет. Например, сохранение в блокчейне большего количества данных может в конечном итоге привести к увеличению требований к RAM для нод steemd. Увеличение потребностей в ресурсах может привести к увеличению затрат для операторов нод (включая разработчиков, заверителей и биржи).

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

Эти факторы могут включать следующее:

  • Размер истории блокчейна
  • Время повторной индексации
  • Размер файла состояния
  • Использование памяти
  • Iops диска
  • Пропускную способность

Предсказуемый пользовательский опыт

В текущей системе распределения пропускной способности Steem пользователям предоставляется определенное количество “байтов” для личного пользования на основе количества Steem Power (SP), которое у них есть. Блокчейн уменьшает или увеличивает количество байтов, которое им выдается, в зависимости от общего уровня активности в блокчейне.

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

Формирование мысленной модели имеет решающее значение для удовлетворения нашего третьего требования к дизайну: более предсказуемого пользовательского опыта на Steem. Предсказуемая модель, которая будет получена в результате внедрения этой новой системы, обеспечит простое и эффективное получение обратной связи от пользовательских интерфейсов с целью информирования пользователей о текущем использовании их RC, об оставшихся RC, о стоимости новых транзакций (измеренной в RC) и о вариантах приобретения дополнительных RC путем повышения SP, если им понадобится дополнительная пропускная способность.

Динамический расчет стоимости

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

Решение, которое мы предлагаем в нашей системе RC, состоит в том, чтобы наладить прямую корреляцию между получаемым количеством RC и определенным количеством SP, и в то же время вычислять стоимость различных транзакций (измеренную в RC) на основе текущего уровня активности в блокчейне. Стоимость определяется на основе базирующейся на рынке внутренней системы, механизм работы которой объясняется ниже.

Геймификация

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

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

Построение цельного беспрепятственного опыта

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

Что такое RC (ресурсные кредиты)?

Самое важное, что нужно знать о RC: они будут непередаваемыми кредитами, предоставленными каждому аккаунту пропорционально количеству его Steem Power, которые будут “тратиться” всякий раз, когда пользователь совершает транзакцию в блокчейне Stem. Конечно, если бы RC не пополнялись с течением времени, то в конечном итоге все в какой-то момент стали бы неспособны совершать транзакции. По этой причине RC восстанавливаются с течением времени.

Обеспечение транзакций

Как только система RC начнет работать, всем транзакциям в блокчейне Steem будет присвоена стоимость, выраженная в RC. Если у аккаунта недостаточно кредитов, транзакция не пройдет. Это будет работать так же, как и в существующей системе, которая не позволяет совершать транзакции, если у аккаунта недостаточно пропускной способности.

Бюджетные пулы ресурсов

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

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

Вычисление цены

Цена каждого ресурса будет основываться на текущем уровне запасов. По мере сокращения запасов цена этого ресурса (выраженная в RC) будет возрастать. Другими словами, по мере того как запасы уменьшаются, аккаунтам придется платить больше RC, чтобы использовать оставшиеся ресурсы.

Стоимость в RC не будет выливаться в повышение цен в STEEM или USD, так как сами RC нельзя переслать. Цель только в том, чтобы задействовать рыночную систему для распределения ресурсов, а не создавать спекулятивные возможности или еще один токен, который можно использовать для покупки товаров или услуг.

Стоимость вычислений

Для каждой транзакции система без учета состояния вычисляет стоимость и курс обмена в RC для таких ресурсов, как мегациклы CPU, память состояния и размер истории.

Из github PR:

Если циклы CPU стоят 5 RC/мегацикл, память состояния стоит 8 RC/байт, а размер истории стоит 4 RC/байт, то транзакция, которая занимает 2 мегабайта, создает 50 байтов состояния и имеет размер транзакции 150 байтов, будет стоить 25 + 508 + 150 * 4 = 1010 RC.

Технические подробности

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

Итог

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

Есть что сказать?

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

Если вы хотите узнать больше о системе RC или у вас есть какие-либо вопросы, оставьте их в комментариях под этим постом.

Спасибо за внимание!

- Команда Steemit


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

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


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


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


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

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Спасибо за перевод.
Ребята явно закладываются под будущее, пока что я не слышал жалоб про недостаток пропускной способности на стиме. Но масштабируемость это важно.

Такое впечатление, что на волне популярности EOS вдохновились померять сколько же ресурсов жрёт Steem и может быть пересоздать на EOS.

конкуренция это хорошо

tha ks for information..to ky mind its good move