SuperAPI AI 工具集

pipes-performance

数据与分析

查看项目

更新于 10-16 05:41

技能介绍

用途:当用户反馈索引器太慢、询问如何加速同步、需要性能分析,或简单用例同步耗时数小时时启用,帮助分析配置、建议起始区块、定位瓶颈并推荐高效过滤策略。

主要能力:检查 src/index.ts 中的起始区块、合约列表、过滤类型与区块范围;识别常见性能问题(起始区块过早、按钱包地址过滤、追踪过多代币、未加过滤、为测试做全量历史同步);依据生产基准估算同步时间(工厂模式与 ERC20 转账约 8,000-13,000 区块/秒;100K 区块约 10-20 秒,1M 约 1-3 分钟,10M 约 10-30 分钟,20M 约 30-60 分钟);若索引器正在运行,可用 BashOutput 查看进度、计算区块/秒并估算剩余时间。

优化策略:调整起始区块(影响最大,如从 6,082,465 改为 20,000,000,14M 区块降至 4M,约快 85%);减少合约列表;用合约过滤替代地址过滤(可快 10-100 倍);使用服务端参数过滤(仅支持 indexed 参数 topic1-3);分阶段测试(小范围验证后逐步扩大)。

使用方式:读取当前配置、计算总区块数、定位瓶颈、按优先级给出优化建议与具体代码改动、估算前后同步时间并给出测试计划。监控命令示例:ps aux | grep "npm run dev|tsx src/index.ts"。

适用场景:EVM 索引器同步调优、开发期快速验证、生产同步提速。

限制:地址过滤本身区块/秒不慢,但需处理更多事件;参数过滤仅限 indexed 参数;若用户需要完整历史数据或同步已很快(<10 分钟),不应优化。相关技能:pipes-troubleshooting、pipes-new-indexer。