Есть вопрос к разработчикам и делегатам, по логам публичных API-нод вижу очень многие так и продолжают использовать get_block
и get_ops_in_block
для мониторинга/накопления всех новых блоков.
Подскажите, чем вызвано нежелание использовать подписку на новые блоки с помощью set_block_applied_callback
, преимущества которого ранее подробно описывал @vik в этом посте. Что должно быть удобно и разработчику и снижает нагрузку на ноды.
С версией 0.18.4 в вызов метода
set_block_applied_callback
добавлен настраиваемый параметр type, принимающий четыре значения. В зависимости от задаваемого значения этого параметра, пользователь может получать следующую информацию о блоке:
— подписанный блок;
— заголовок блока;
— виртуальные операции блока;
— подписанный блок и виртуальные операции.
Здесь подробнее - https://wiki.golos.id/developers/hardforks/sf18.4_release
Пример получения данных, отсюда
<script>
golos.config.set('websocket', 'ws://127.0.0.1:8091');
golos.api.send("database_api", {"method": "set_block_applied_callback", "params":["full"]},
function (err, result) {
document.body.innerHTML += '<pre>' + JSON.stringify(result, null, 2) + "</pre>";
});
</script>
Кто написал под старую схему, без особого стимула на каллбэки не будет переписывать. Да и там приезжает head block, а если нужен irreversible, то без постоянных опросов global properties не обойтись.
@ksantoprotein ответил в чате:
@t3ran13 ответил в чате:
Может пригодится для обсуждения и других мнений.