摘要
Asset Hub 是 Polkadot 和 Kusama 上的一个系统平行链,用于承载同质化代币、NFT 和其他数字资产。它提供了一个专门的环境,用于以低费用和高吞吐量创建、管理和转移资产。本文解释了什么是 Asset Hub,如何将您的 dApp 连接到它,以及如何为您的用例选择合适的 RPC 端点。
Asset Hub 是 Polkadot 和 Kusama 网络上的一个系统平行链,专门用于数字资产的创建、管理和转移。它承载同质化代币和非同质化代币(NFT),并作为跨链操作中 DOT 的主要储备位置。对于开发者来说,Asset Hub 为资产相关的用例(如代币发行、NFT 市场和资产转移)提供了低费用、高吞吐量的环境。
如果您正在构建一个需要与 Polkadot 或 Kusama 上的资产交互的应用程序,您可能需要连接到 Asset Hub 的 RPC 端点。本文解释了什么是 Asset Hub,如何连接到它,以及如何为您的项目选择合适的 RPC 提供商。
快速推荐:您应该使用哪个 Asset Hub 端点?
在深入细节之前,这里有一个快速指南,帮助您决定使用哪个 Asset Hub 端点:
- 对于生产环境 dApp:使用像 OnFinality 这样的托管 RPC 提供商,以确保高可用性和可扩展性。公共端点适合测试,但可能有速率限制,并且在负载下可能不可靠。
- 对于开发和测试:使用公共端点或本地节点。公共端点对于快速测试很方便,但您应该避免在生产流量中使用它们。
- 对于高吞吐量或归档需求:考虑专用节点或提供归档数据的提供商。Asset Hub 的历史对于需要查询过去状态的应用程序可能很重要。
- 对于 WebSocket 订阅:如果您需要实时更新(例如跟踪代币转移或 NFT 铸造),请确保您的提供商支持 WebSocket 连接。
如果您不确定哪个选项适合您的工作负载,请从托管 RPC 提供商开始,并监控您的使用情况。如果需要,您始终可以扩展到专用节点。
什么是 Asset Hub?
Asset Hub 是一个在 Polkadot 和 Kusama 上运行的系统平行链。它旨在成为网络中资产的“大本营”,为资产操作提供可信且高效的环境。与通用平行链不同,Asset Hub 针对资产管理进行了优化,提供:
- 同质化资产:可以创建、转移和销毁的代币。这些可以代表从稳定币到游戏内货币的任何东西。
- 非同质化资产:可以代表数字艺术、收藏品或其他独一无二物品的独特代币(NFT)。
- 资产转换:用于交换资产的内置机制,类似于去中心化交易所(DEX),但专注于资产对。
- 跨链记账:Asset Hub 与中继链的消息传递系统集成,允许资产在平行链之间转移。
Asset Hub 使用中继链的原生代币(DOT 或 KSM)支付交易费用。它没有通货膨胀或基于时代的收集者奖励,但收集者会获得一部分交易费用。
为什么 Asset Hub 对开发者很重要
Asset Hub 很重要,因为它为资产相关操作提供了专用、高效的环境。您不必在通用链上构建自己的资产逻辑,而是可以利用 Asset Hub 的内置功能。这可以节省开发时间并降低复杂性。
例如,如果您正在构建一个 NFT 市场,您可以使用 Asset Hub 来铸造、转移和管理 NFT,而无需编写自定义智能合约。同样,如果您要发行代币,您可以在 Asset Hub 上创建它,并利用其低费用和高吞吐量。
Asset Hub 还在 Polkadot 生态系统中从中继链迁移的过程中扮演着关键角色。随着网络的发展,更多与资产相关的功能正在迁移到 Asset Hub,使其成为基础设施中越来越重要的一部分。
Asset Hub 与其他链:有何不同?
Asset Hub 不是像以太坊那样的智能合约平台,也不是像 Moonbeam 那样的通用平行链。相反,它专注于资产。以下是一个比较:
| 功能 | Asset Hub | 通用平行链 | 智能合约平台 |
|---|---|---|---|
| 主要用例 | 资产创建和管理 | 自定义逻辑和 dApp | 智能合约和 dApp |
| 代币标准 | 原生资产模块 | 自定义模块 | ERC-20、ERC-721 等 |
| 费用 | 低,以 DOT/KSM 支付 | 因平行链而异 | 以原生代币支付 Gas 费 |
| 智能合约支持 | 有限(通过模块) | 是 | 是 |
| 跨链兼容性 | 通过 XCM 原生支持 | 通过 XCM 原生支持 | 桥接和 XCM |
此表显示 Asset Hub 最适合资产聚焦的应用程序。如果您需要复杂的智能合约逻辑,您可能需要使用不同的平行链或智能合约平台。
如何连接到 Asset Hub RPC 端点
要与 Asset Hub 交互,您需要一个 RPC 端点。以下是常见的连接方式:
公共端点
公共端点由 Polkadot 和 Kusama 网络提供,用于测试和开发。它们是免费的,但可能有速率限制,并且在重负载下可能不可靠。您可以在 Polkadot Wiki 中找到它们,或使用像 OnFinality 的公共 RPC 端点这样的服务。
托管 RPC 提供商
像 OnFinality 这样的托管 RPC 提供商为生产环境提供可靠、可扩展的端点。它们处理基础设施维护、负载均衡和故障转移,因此您可以专注于构建应用程序。OnFinality 支持 Polkadot 和 Kusama 上的 Asset Hub,您可以在支持的网络页面上找到端点。
运行您自己的节点
运行您自己的 Asset Hub 节点可以让您完全控制基础设施,但这需要大量的时间和资源。您需要维护节点、保持同步,并确保其始终可用。对于拥有专门 DevOps 资源的团队来说,这是一个不错的选择,但对于大多数项目来说,托管提供商更实用。
Asset Hub 的链设置
连接到 Asset Hub 时,您需要正确的链设置。以下是 Polkadot 和 Kusama Asset Hub 的快速参考:
| 网络 | 链 ID | 代币 | 浏览器 |
|---|---|---|---|
| Polkadot Asset Hub | 1000 | DOT | Polkadot.js |
| Kusama Asset Hub | 1000 | KSM | Polkadot.js |
注意:两者的链 ID 都是 1000,但网络不同。确保您为目标网络使用正确的端点。
示例:使用 ethers.js 连接到 Asset Hub
如果您使用像 ethers.js 这样的 JavaScript 库,您可以像这样连接到 Asset Hub 的 RPC 端点:
const { ethers } = require("ethers");
// 替换为您的 RPC 端点
const rpcUrl = "https://asset-hub-polkadot-rpc.publicnode.com";
const provider = new ethers.providers.JsonRpcProvider(rpcUrl);
async function getBlockNumber() {
const blockNumber = await provider.getBlockNumber();
console.log("当前区块号:", blockNumber);
}
getBlockNumber();
此示例使用公共端点。对于生产环境,您应该使用像 OnFinality 这样的托管提供商以确保可靠性。
Asset Hub 的常见 RPC 方法
Asset Hub 支持标准的 Substrate RPC 方法,以及一些特定于资产的方法。以下是一些常用的方法:
chain_getBlock:按哈希或编号获取区块。state_getStorage:获取存储值。assets_getAsset:获取特定资产的详细信息。nft_getNft:获取特定 NFT 的详细信息。
您可以使用这些方法来查询资产信息、检查余额等。有关完整列表,请参阅 Substrate RPC 文档。
常见连接问题的故障排除
如果您在连接到 Asset Hub 时遇到问题,以下是一些常见问题和解决方案:
- 连接超时:如果您的请求超时,端点可能过载,或者您的网络可能阻止连接。尝试不同的端点或使用托管提供商。
- 速率限制:公共端点通常有速率限制。如果您遇到限制,请考虑升级到付费计划或使用专用节点。
- 错误的网络:确保您为 Polkadot 或 Kusama 使用正确的端点。使用错误的端点将导致错误。
- WebSocket 问题:如果您使用 WebSocket,请确保您的客户端支持它,并且端点支持 WebSocket 连接。
如果您继续遇到问题,请检查 OnFinality 状态页面 以了解任何正在发生的事件。
关键要点
- Asset Hub 是 Polkadot 和 Kusama 上的一个系统平行链,用于资产的创建、管理和转移。
- 它支持同质化代币、NFT 和资产转换,使其成为资产聚焦应用程序的理想选择。
- 要连接,您可以使用公共端点、托管 RPC 提供商或您自己的节点。
- 对于生产环境,使用像 OnFinality 这样的托管提供商以确保可靠性和可扩展性。
- 始终验证您的链设置,并为您目标网络使用正确的端点。
常见问题解答
Asset Hub 用于什么?
Asset Hub 用于在 Polkadot 和 Kusama 上创建、管理和转移数字资产。它支持同质化代币和 NFT,并为资产操作提供低费用、高吞吐量的环境。
如何获取 Asset Hub RPC 端点?
您可以使用公共端点(免费但可能有速率限制),或者使用像 OnFinality 这样的托管 RPC 提供商,它提供可靠、可扩展的生产环境端点。您可以在 OnFinality 网络页面 上找到支持的端点。
我可以运行自己的 Asset Hub 节点吗?
是的,您可以运行自己的 Asset Hub 节点。这使您完全控制基础设施,但需要大量的时间和资源。对于大多数项目,托管提供商更实用。
Asset Hub 和智能合约平台有什么区别?
Asset Hub 专用于资产,不支持通用智能合约。像以太坊这样的智能合约平台允许您编写任意逻辑,但可能有更高的费用和更低的吞吐量。Asset Hub 针对资产操作进行了优化,使其在这些用例中更高效。
如何为 Asset Hub 选择合适的 RPC 提供商?
考虑可靠性、可扩展性、WebSocket 支持、归档数据和定价等因素。对于生产环境,选择提供高可用性并能处理您流量的提供商。OnFinality 提供 RPC 定价,可根据您的需求扩展。
Asset Hub 在 Polkadot 和 Kusama 上都可用吗?
是的,Asset Hub 在 Polkadot 和 Kusama 上都运行。两者的链 ID 都是 1000,但端点和代币不同。确保您为目标网络使用正确的端点。
Asset Hub 上的费用是多少?
费用以中继链的原生代币(DOT 或 KSM)支付。它们通常较低,使 Asset Hub 适合高频资产操作。
我可以将 Asset Hub 用于 NFT 吗?
是的,Asset Hub 支持 NFT。您可以使用其内置模块铸造、转移和管理 NFT,使其成为 NFT 市场和收藏品的良好选择。
如何监控我的 Asset Hub RPC 使用情况?
如果您使用像 OnFinality 这样的托管提供商,您可以通过仪表板监控您的使用情况。对于您自己的节点,您可以使用 Prometheus 和 Grafana 等监控工具。
如果我的 Asset Hub RPC 请求失败,我该怎么办?
检查您的端点、网络设置和速率限制。如果问题仍然存在,请尝试其他提供商或联系支持。OnFinality 为其服务提供 支持。
有关 RPC 提供商以及如何选择合适的提供商的更多信息,请参阅我们的 选择 RPC 提供商指南。