SuperAPI AI 工具集

bitcoin-infrastructure-fulcrum

部署与运维

查看项目

更新于 10-15 17:35

技能介绍

用途:Fulcrum 是 C++ 实现的 Electrum 协议服务器,用于为 Electrum 客户端、闪电网络节点等提供比特币区块链索引与查询服务。相比 electrs,它在高并发查询场景下吞吐更快,代价是更高的内存占用。仓库为 github.com/cculianu/Fulcrum。

主要能力:支持 TCP 与 SSL 端点,兼容 Sparrow、Electrum、BTCPay 等客户端。2.0.0(2025 年 9 月)重写了数据库格式,datadir 具备崩溃安全与平台中立特性,移除了 fast-sync / utxo_cache(改用 db_mem),1.x 的 datadir 需一次性运行 --db-upgrade 转换。当前版本 2.1.2(2026 年 8 月)。

使用方式:需先运行带 txindex=1 的 Bitcoin Core,再配置 Fulcrum,例如 [options] 中设置 datadir、bitcoind=127.0.0.1:8332、rpcuser、rpcpassword、tcp=0.0.0.0:50001、ssl=0.0.0.0:50002。上游 README 称在 SSD 上索引需 4 至 20+ 小时,并建议为 BTC 主网数据库预留约 133 GB(该数字自 2023 年 8 月起沿用),另加节点自身区块数据。

适用场景:高流量公共 Electrum 服务器、多钱包连接的高级用户、发票量大的 BTCPay 后端。个人低流量使用或资源受限设备更适合 electrs。注意节点前置条件不同:electrs v0.12.0 通过 bitcoind REST 接口索引,需 Bitcoin Core 31.0+ 且 rest=1;Fulcrum 通过 JSON-RPC 对接 Core v0.17.0+,需 txindex=1。

限制与常见问题:高内存占用(8+ GB)可通过调优 db_mem、db_max_open_files 缓解;SSL 端点证书不匹配会导致钱包无法连接;Bitcoin Core RPC 连接中断时 Fulcrum 会重连但可能漏块,极端情况需重启。