GOLOS
RU
EN
UA
vik
2 года назад

🎯 Обновление ботов на golosd 0.18.0 и golosjs 0.7.0 💡Новые обязательные параметры в методах getContent и getActiveVotes

Хардфорк 20 June 2018 12:00:00 MSK

Ебанный хардфорк

💽 Обновлены телеграм-боты для голосования:

@golosrobot @upvoterbot @upvote100bot @upvbot @uppbot @up2bot @xvotebot @votexbot @solocuratorbot @strecozabot @autoupvotebot @mapvotebot @g0fuckbot
@upvotemebot @hottabot @goldvoicebot @topocbot @betarobot 

Боты были обновлены на совместимую с завтрашним хардфорком версию и подключены к локальным нодам v0.18.0
Возможны небольшие задержки и пропуски как временная проблема до полного кеширования скриптов.

golosjs 0.7.0 - новые параметры в методах getContent и getActiveVotes

На самом деле изменений в API намного больше, о них можно прочесть тут document , я лишь опишу два самых популярных для кураторских скриптов.

Теперь в метод getContent и getActiveVotes кроме author и permlink нужно обязательно(?) передавать дополнительный числовой параметр-лимит который отвечает за список апвотов в посте. Естественно вам нужно обновить библиотеку npm i golos-js@0.7.0

Вышеупомянутые методы позволят вам увидеть сколько и какие апвоты есть на посте.

  1. Чтобы получить весь список апвотов укажите -1 : golos.api.getContent(author,permlink,-1)
  2. Чтобы получить недавние 10 апвотов укажите 10 : golos.api.getContent(author,permlink,10)
  3. Чтобы не запрашивать список апвотов укажите 0 : golos.api.getContent(author,permlink,0)

(Точно также следует работать и с методом getActiveVotes)

Если логика вашего скрипта подразумевает получение всего списка апвотов, допустим для проверки наличия на посте определенных апвотов, то следует использовать вызов из пример 1 и получать весь список.

Если вам нужно получить только недавние апвоты, например для отображения во фронте приложения, можно использовать пример 2. Загрузить 10 недавних вместе с прочим методом getContent и только по запросу с клиента загружать уже весь список методом getActiveVotes

Если же вашему приложению нужен только контент и нет надобности работать со списком апвотом в посте - используйте пример 3, это позволит сделать метод getContent менее требовательным, нода не будет отдавать вместе с данными поста еще и громоздкий список апвотов.

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

Публичная нода api.golos.cf

В ближайшее время нода будет отключена.
Возобновление работы публичной ноды я расчитывю провести в несколько этапов:

Первая неделя без архивных данных с малым количеством нод в кластере, 2 неделя - полные ноды, все еще в малом количестве, 3 неделя - полноценный кластер с полными нодами.

  1. Первые несколько дней в публичной ноде будут работать обрезанные экземпляры golosd без архивных данных. Не будет возможности запросить старые данные до хардфорка, запрос же свежих данных , а также бродкаст - будут работать в штатном режиме.
  2. Когда будут засинхронизированы первые полные ноды ими будут заменены обрезанные ноды
  3. Освободившееся обрезанные ноды будут поставлены на реплей для наполнения базы и позднее подключены к остальным полным нода в кластере.

Эти неудобства обусловлены медленной синхронизацией полных нод (включены все возможные плагины и нет очистки истории).

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

PS

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

В чатах я по-прежнему доступен и оказываю поддержку, обращайтесь @chain_cf если телеграм заблокирован - в чат можно попасть со страниц https://golos.cf

5
393.547 GOLOS
На Golos с January 2017
Комментарии (5)
Сортировать по:
Сначала старые