摘要
Acala Network是基于Polkadot构建的去中心化金融(DeFi)中心,提供跨链流动性、流动性质押和EVM兼容的智能合约平台。本指南涵盖Acala的架构、如何通过RPC端点连接,以及开发者在Acala上构建时的关键考量。
Acala Network决策清单
在集成Acala Network之前,评估以下标准以确保您的基础设施符合项目需求。
| 标准 | 检查内容 | 重要性 |
|---|---|---|
| 网络类型 | 主网或测试网(例如Acala Mandala) | 测试网对开发至关重要;主网用于生产环境。 |
| RPC端点可靠性 | 正常运行时间、速率限制和延迟 | 不可靠的端点会导致交易失败和用户体验差。 |
| EVM兼容性 | Solidity支持、预编译 | Acala的EVM+允许使用以太坊工具;验证与您的合约的兼容性。 |
| 数据归档深度 | 全节点、归档节点或修剪节点 | 归档节点用于历史查询;全节点满足大多数dApp需求。 |
| 提供商声誉 | 文档、支持、SLA | 响应迅速的提供商可减少停机时间和故障排除工作。 |
| 定价模式 | 按需付费、订阅或专用节点 | 根据流量模式和预算匹配成本结构。 |
什么是Acala Network?
Acala Network是基于Polkadot构建的去中心化金融(DeFi)平台。它作为平行链运行,利用Polkadot的共享安全性和互操作性,同时维护自己的执行环境。Acala提供一套DeFi原语,包括流动性质押协议(Homa)、去中心化交易所(DEX)和跨链稳定币系统(Honzon)。它兼容EVM,允许开发者以最小更改部署Solidity智能合约。
关键组件:
- ACA代币:原生实用和治理代币。
- aUSD(现为AUSD):去中心化的多抵押稳定币。
- LDOT:流动性质押的DOT,代表质押的DOT加上质押奖励。
- Euphrates:统一的流动性质押平台。
- EVM+:增强的以太坊虚拟机,具有Substrate原生功能。
Acala Network架构
Acala使用Substrate框架构建,提供灵活性和模块化。它通过平行链插槽连接到Polkadot中继链。网络使用收集人(collator)生成区块并将其中继到Polkadot验证人进行最终确认。这种设计使Acala具有高吞吐量、低费用和自定义运行时的能力。
EVM+与Substrate双环境
Acala同时支持Substrate原生模块和以太坊兼容的智能合约。开发者可以使用Solidity编写合约,并通过MetaMask或Hardhat部署,同时访问Substrate特定功能,如链上治理和自定义模块。
如何连接Acala Network
要与Acala交互,您需要一个RPC端点。以下是使用常见工具连接的示例。
使用curl
curl -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' \
https://acala-rpc.publicnode.com
使用ethers.js
const { ethers } = require("ethers");
const provider = new ethers.providers.JsonRpcProvider(
"https://acala-rpc.publicnode.com"
);
provider.getBlockNumber().then(console.log);
使用web3.py
from web3 import Web3
w3 = Web3(Web3.HTTPProvider("https://acala-rpc.publicnode.com"))
print(w3.eth.block_number)
为Acala选择RPC提供商
选择RPC提供商时,考虑以下因素:
- 可靠性:寻找具有透明正常运行时间统计和冗余基础设施的提供商。
- 速率限制:确保计划与您的请求量匹配。免费层通常有严格限制。
- 地理分布:低延迟端点可改善全球用户的体验。
- 支持:在开发和故障期间,技术支持至关重要。
OnFinality为Acala主网和测试网提供RPC端点,并提供灵活的定价选项,适合各种规模的项目。对于高流量应用,专用节点提供隔离资源和一致性能。
常见陷阱与故障排除
1. 错误的链ID
Acala的链ID是787。在MetaMask或其他钱包中使用错误的链ID会导致交易失败。
2. EVM交易的Gas不足
Acala使用类似于以太坊的Gas模型。确保您的账户有足够的ACA来支付Gas费用。您可以使用eth_estimateGas估算Gas。
3. 区块最终确认延迟
Acala区块在包含到Polkadot中继链区块后才最终确认。这可能比以太坊多花几秒钟。使用eth_getTransactionReceipt确认最终性。
4. 公共端点的速率限制
公共RPC端点通常有速率限制。对于生产dApp,考虑使用私有端点或专用节点以避免限流。
关键要点
- Acala Network是Polkadot上的DeFi平行链,兼容EVM。
- 它提供流动性质押、DEX和稳定币协议。
- 开发者可以通过Acala的EVM+使用标准以太坊工具连接。
- 选择可靠的RPC提供商对dApp性能至关重要。
- OnFinality提供Acala RPC端点和专用节点解决方案。
常见问题
Acala Network的RPC URL是什么?
Acala主网的公共RPC URL是https://acala-rpc.publicnode.com。测试网(Mandala)使用https://acala-mandala-rpc.publicnode.com。
Acala是否兼容EVM?
是的,Acala支持以太坊虚拟机(EVM+),并具有额外的Substrate功能。您可以部署Solidity合约,只需进行少量调整。
如何获取测试网的ACA代币?
使用Acala官方网站或社区渠道上的水龙头。测试网代币没有实际价值。
我可以运行自己的Acala节点吗?
是的,您可以使用Substrate运行全节点。但对于生产dApp,使用像OnFinality这样的托管RPC提供商可以节省运维开销。
Acala和Karura有什么区别?
Karura是Acala在Kusama上的姐妹网络,作为实验性功能的金丝雀网络。Acala是Polkadot上的主网。
下一步
- 探索Acala文档获取详细的集成指南。
- 使用可靠的RPC端点在Acala Mandala测试网上测试您的dApp。
- 在OnFinality的网络页面上比较RPC提供商,找到最适合您项目的方案。
- 对于需要一致性能的高吞吐量应用,考虑使用专用节点。