Мамкины бизнесмены бывают разные. Я работал с таким человеком пару лет. Ну и что, что он живет с родителями, деньги платит, зарабатывать умеет, бюджет может делить с родителями, имеет связи от родителей, в деловом общении приятен, часть проектов прогорает, часть выстреливает.
Читать полностью…Если есть чейны где создают по пулу в секунду, то возможно
Но это непрактичные примеры, скорее всего эти чейны просто хлам
Ну ок, на Эфире может сторедж может сработать лучше.
Тогда можно подумать, про другие чейны, где на форках пулов гораздо больше
независимо от ноды, сторейдж дает выигрыш по сравнению с эвентами все равно
20 мультиколлов на максимальный объем за одно чтение пройдет даже на публичной ноде мгновенно, я проверял
Ну смотря откуда нода.
Если своя, то ок.
У большей части нод провайдеров такая схема не сработает. Они за такой multicall возьмут по полной программе
Uniswap V2 на Эфире пулов 182 000.
Можете конечно все спросить, есть ли в них определенный токен, но проще по ивенту создания пула искать
Потыкал chain list, https://eth-pokt.nodies.app вот например отдаст старые события
Читать полностью…Скажите пожалуйста, какой самый оптимальный вариант получения исторических данный на transfer события контракта. К примеру при запросе контракта erc20 токена, я получаю все транзакции с этим токеном начиная с создания этого контракта. Я пробовал moralis api но там ограничения по количеству данных и я быстро упираюсь в лимиты дневных запросов
Читать полностью…А мне в отличие от @cryptic_ape не вполне понятно что вы хотите сделать.
У вас есть контрак Diamond1 (D1) и контракт Diamond2 (D2).
Вы находитесь в контексте D1 и хотите вызвать функцию из D2. Верно?
С этой точки зрения, вас не должно волновать внутреннее устройство D2.
Вы просто берете и вызываете нужную функцию... обычным call, не delegatecall.
А в чем проблема-то?
Мне кажется, ваша проблема связана с тем, что вы не полностью понимаете как работает Facet и delegatecall.
Суть в том, что код фасета - это как код библиотеки. Он работает внутри контекста Diamond- а: с его storage, с его msg.data и msg.sender, this указывает на адрес Diamond- а и т.д. То есть функция фасета - это просто кусок библиотечного кода.
А все взаимодействия происходят между Diamond-ами. С этой точки зрения ваша диаграма, где фасеты лежат отдельно от даймондов - не показвает сути процесса и только путает вас.
можно ли где-то посмотреть список НЕ долларовых стейблкоинов, чтобы там была их капитализация, и вообще максимальная информация по каждому, везде где смотрю, преобладают USD, не знаю как отсортировать
Читать полностью…В общем через ивенты более универсально.
Но для UNI V2 можно сделать более оптимально через multicall
По такой формуле на всех L2 побеждает способ со сторейджем – на них просто очень много блоков и плотность пулов еще ниже чем на эфире
Читать полностью…99% шанс, что у того, кто спрашивает, нода не своя
и все равно я не вижу условия при котором плотность 1 пул на 100 блоков может привести способ с чтением эвентов к победе
способ с эвентами выравнивается со способом чтения из сторейджа при частоте создания пулов
1 пул в 1 блок
на практике у юни темп ~ 1 пул в 100 блоков
в среднем нода разрешает ~10к блоков за раз просмотреть на эвенты
за 4 года было примерно ~10млн блоков
то есть 1000 чтений – на 2 порядка больше чем с multicall
даже с фильтром
Пулы начали создавать ~4 года назад
За это время было так много блоков, что мне кажется эвенты нода будет отдавать дольше чем просто чтение из сторейджа
Есть контракт multicall и обертка вокруг него для viem/wagmi под названием readContracts
Пулов по моей оценке 100к-200к всего, поэтому ты можешь прочитать их все и отфильтровать на клиенте
На это тебе понадобится всего лишь ~20 запросов к ноде, то есть вопрос нескольких секунд
Спасибо! Через каких провайдеров посоветуете или архивную ноду только если самому поднимать?
Читать полностью…1) Архивная нода
2)
Читать полностью…
var filter = web3.eth.filter({
fromBlock:0, // contract deployment block
toBlock: 'latest',
address: ’contract_address',
'topics':[
web3.sha3('Transfer(address,address,uint256)')
]
});
Да, уже так и сделал, что то сходу про обычный колл не подумал
Не так все сложно оказалось
Магия вне Хогвартса запрещена, а без магии - т.е. либо указывая какие именно пулы вам нужны, либо используя историю блокчейна - вы не хотите.
Наука здесь бессильна...