Я использую интерфейс субстрата Python для просмотра внешних данных конкретного блока блокчейна на основе субстрата. Однако метод decode_scale очень медленный: для 500 внешних переменных (всего около 1 миллиона байт) требуется около 1 секунды. Простой базовый вариант с binascii работает в 100–1000 раз быстрее, хотя он не выполняет часть декодирования, связанную с кодеком масштабирования.
Текущий код:
Код: Выделить всё
substrate = SubstrateInterface(url="ws://localhost:9944")
...
async with session.post("http://localhost:9944", json=payload) as resp:
res = await resp.json()
for hex_extrinsic in res['result']:
decoded = substrate.decode_scale("Extrinsic", hex_extrinsic)
... # process decoded
Есть ли способ ускорить это? Например, библиотека, оптимизированная для производительности.
Подробнее здесь:
https://stackoverflow.com/questions/793 ... code-scale