Magician-Blockchain / Magician-Scanning

Magician-Scanning is a toolkit developed in Java for scanning blockchains, which can be used to monitor transactions according to the needs of developers, and it plans to support three chains, ETH (BSC, POLYGON, etc.), SOL and TRON
https://magician-io.com
MIT License
79 stars 17 forks source link

你好,怎么处理扫描服务重启? #1

Open pontali opened 1 year ago

pontali commented 1 year ago

你好,怎么处理扫描服务重启? 或者怎么监听区块高度变化?

yuyenews commented 1 year ago

暂时没有专门的功能来实现,但是有个办法可以实现这样的功能:

创建一个 filter为null的 监听器(ethMonitorFilter方法直接返回null), 这个监听器可以收到所有被扫出来的交易记录,每次被触发的时候 就把 块高记录下来。 如果宕机 或者服务停了,可以从被记录下来的这个块高开始扫描。

pontali commented 1 year ago

暂时没有专门的功能来实现,但是有一个方法可以实现这样的功能:

filter filter为null的的(((((Null),null),null),这这这方法这这个个监听器可以可以收到所有被出来的记录记录记录记录记录记录记录记录记录,可以从被记录下来的这个块开始扫描。

感谢,可以了🙏 顺便问一下,不同filter 是在同一线程执行,还是不同线程执行?

yuyenews commented 1 year ago

暂时没有专门的功能来实现,但是有一个方法可以实现这种功能: 滤波器为null(null)(null),null),null),null),null),null),null),这个这个方法这个收到所有被拿拿的记录记录记录记录记录记录记录记录记录记录记录记录记录记录

谢谢,可以了🙏 顺便问一下,不同filter是在同线执行,还是不同线执行?

在同一个线程,排队执行,扫块跟filter是两个线程

viper-00 commented 1 year ago

我的建议是在redis缓存服务器内存储三个变量,最高度、缓存高度、当前扫块高度。