#registry #polkadot #chevdor #third-party

app subrpc

subrpc 是一个命令行工具

6 个版本

0.6.0 2024年1月4日
0.0.5 2023年4月21日
0.0.4 2023年1月27日
0.0.2 2022年12月8日
0.0.1 2022年11月30日

#347 in 魔法豆

每月42次下载

MIT 许可证

44KB
868

SubRPC

简介

SubRPC 帮助维护和管理本地 RPC 端点列表。使用 subrpc,用户可以聚合来自多个公共或私有 RPC 端点注册表的数据,并保持其本地数据库新鲜。

虽然 subrpc 命令行工具允许在终端中使用数据,但 subrpc-core 仓库可以帮助第三方应用获取和维护 RPC 端点列表。

这有助于您的应用不再需要提供如 your-cli --url wss://rpc.polkadot.io 这样的标志,而是使用 your-cli --chain polkadot 并确保连接到高质量的 RPC 端点。

快速入门

cargo install subrpc

# `reg` is an alias for `registry`
subrpc reg add https://raw.githubusercontent.com/chevdor/subrpc/master/registry/subrpc.json
subrpc reg add https://raw.githubusercontent.com/chevdor/subrpc/master/registry/parity.json
subrpc reg add https://raw.githubusercontent.com/chevdor/subrpc/master/registry/dwellir.json
subrpc reg add https://raw.githubusercontent.com/chevdor/subrpc/master/registry/onfinality.json
subrpc reg add https://raw.githubusercontent.com/chevdor/subrpc/master/registry/moonbeam.json
subrpc reg add https://polkadot-cloud.github.io/polkadot_network_directory/registry.json
subrpc reg up
subrpc system info

# `ep` is an alias for `endpoints`
subrpc ep ls
subrpc ep get polkadot

提示

如果您与多个链一起工作,可以将以下函数添加到您的 .bashrc.zshrc

您需要安装 fzf 并安装 subrpc v0.0.4+。

# A function to interactively open a chain in your Browser
# Simply call `sub` or `sub <pattern>`
function sub() {
    chains=$(subrpc reg chains)

    if [ ! -z "$1" ]; then
        query="$1"
        echo "Searching for chains matching: $query"
        chain=$(echo "$chains" | sort -r | fzf -1 -q "$query" --prompt="Select the chain to open in your browser > ")
    else
        chain=$(echo "$chains" | sort -r | fzf -1 --prompt="Select the chain to open in your browser > ")
    fi
    subrpc endpoints open "$chain"
}

通过简单地调用 subopen 来调用函数。输入链的名称,可以是近似名称,例如 river,然后按回车键。

点击下面的图片或点击 这里 以查看此提示的实际操作

7R4qTXsZmnF5kuH6sC2jveY8W

注册表

注册表主要是一份 RPC 端点列表,存储在 JSON 文件中,并通过 Web 服务器(公共或非公共)提供。

以下是一些公共注册表列表

用法

帮助

`subrpc` allows managing a set of registry providing rpc nodes

Usage: subrpc <COMMAND>

Commands:
  registry   Manage your registries
  system     System
  endpoints  Endpoints
  config     Config
  help       Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help information
  -V, --version  Print version information

配置

Config

Usage: subrpc config <COMMAND>

Commands:
  list  Config list
  edit  Config edit
  help  Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help information
  -V, --version  Print version information

注册表

Manage your registries

Usage: subrpc registry <COMMAND>

Commands:
  list    List currently known registries
  show    Show the list of registries and some of the content
  add     Add a new registry. It will be enabled by default
  update  Fetch the latest data from the registries and update the list of endpoints
  help    Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help information
  -V, --version  Print version information

端点

Endpoints

Usage: subrpc endpoints <COMMAND>

Commands:
  list  Show the list of all endpoints
  get   Get one or some endpoints
  ping  Ping endpoints
  help  Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help information
  -V, --version  Print version information

系统

System

Usage: subrpc system <COMMAND>

Commands:
  info  Show general system information such as the location of relevant files
  init  Reset your local database
  help  Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help information
  -V, --version  Print version information

常见问题解答

SubRPC 是注册表吗?

不是。虽然 SubRPC 提供了一个非常基本的默认 RPC 端点列表,但此列表将保持较小且不太维护。它将仅包含网络的一些核心 RPC 端点,并且肯定会有许多重要的端点。

我可以使用私有注册表吗?

当然可以!这正是 SubRPC 的理念。您可以访问公共和私有注册表,建立自己的 RPC 端点数据库。

我如何确保我的列表是最新的?

subrpc 可以通过两种方式帮助您刷新/更新端点:首先,它将检查注册表中的新端点并将其添加到您的列表中,但它也会测试端点以确保您的本地端点列表保持质量。

使用 subrpc-core crate 还可以收集(本地)有关您连接到的 RPC 端点的一些信息。这样做是为了让您在一段时间内跳过质量较差的端点,同时保持质量 RPC 端点列表的更新。这一切都是本地的,100% 有偏见:您可能认为差的端点可能对其他人来说效果很好,此外,配置(将)允许自定义端点列表。

我可以托管自己的注册表吗?

绝对可以,这将很棒。如果您创建一个公开的注册表,请在此存储库中打开一个 PR,这样我们就可以记录公共注册表的列表。

SubRPC 如何判断 RPC 端点是好是坏?

每次您连接(或请求刷新)时,SubRPC 都会检查端点是否可访问,如果是,则会收集一些关于它的指标。这允许维护一个最适合您的最佳端点列表。此列表是个人化的,并保留在您的机器上。

依赖关系

~14–30MB
~472K SLoC