如何同时调用比特币核心rpc?

问题描述 投票:0回答:1

我正在尝试为100k块调用getBlock。顺序调用它们太慢了。这就是我正在尝试的。我有一个完整的比特币核心节点正在运行。我设置-rpcthreads = 100和-rpcworkqueue = 100,然后使用js来创建Promise.all([多个rpc调用])。据我了解,rpcthreads允许并发调用,但是也许我误解了它。我预计运行2 getblock所需的时间与运行1相似。但是,我看不到性能大幅提高(运行2大约需要两倍的时间)。使比特币核心接受并发的rpc请求的正确方法是什么?谢谢!

我的比特币核心配置:-server -rpcuser=un -rpcpassword=pw -txindex=1 -rpcthreads=100 -rpcworkqueue=100

我试图使其并发(客户端是rpc api的包装器类。):

    const before = Date.now();
    await Promise.all([
      client.getBlock('0000000000000000000119e179a3169afe7e1dbd867cb9070a6f75a583b98fb3'),
      client.getBlock('0000000000000000000119e179a3169afe7e1dbd867cb9070a6f75a583b98fb3')
    ]);
    const afterAll = Date.now();

    console.log('time for all');
    console.log(afterAll - before); 
bitcoin bitcoind
1个回答
0
投票

你甚至尝试过吗?你猴子去拿香蕉

© www.soinside.com 2019 - 2024. All rights reserved.