“公共区块链的链上资源分配及管理方式是非常重要的。有些区块链网络基于交易费用运行,这一方式费用随着用户交易意愿上升而上涨。这些费用由矿工收取。EOS 公链的资源模型和这些区块链不同,EOS 通过质押 EOS 代币获取资源。”
一般来说,EOS 区块链使用三种资源来执行操作:
处理器(CPU) 带宽:处理交易所需的时间。
网络(NET) 带宽:以字节(bytes)为单位的可交易容量。
链上数据存储(RAM),以字节(bytes)为单位。
2021 年 4 月推出的新 PowerUp 资源模型,改变了 CPU 和 NET 的分配和管理方式。
原来的资源模型中,一个用户控制的链上资源份额与其所持有的 EOS 代币比例挂钩。这类似于持有 “数字房产”。通过抵押代币,你就能获得一定比例的链上资源。用户获得的 CPU 和 NET 资源比例等于其抵押代币量占总抵押量的比例。占 1% 的代币,就能够获得链上资源的 1%。
然而,这种模型会产生以下一些问题:
网络有大量的资源闲置,但其他用户却无法获取使用这些资源。因为很多用户抵押他们的代币只是为了资产安全或者节点投票,他们并不需要所获得的链上资源。
尝试交易过程中,存在资源不足的风险。此状况下,用户的可用方案和对应问题有:
购买更多 EOS 代币以完成交易。显然,这对不是一个可取的做法。
从资源交易所 REX 获取资源。这种方式也是经常出问题,REX 也经常没有足够的资源。
使用协助管理资源的钱包。这种方式的问题和上一种类似,因为钱包通过 REX 来获取资源的。而且这种方式还增加了用户学习成本,学习钱包的使用。
1 EOS PowerUp 资源模型
EOS PowerUp 资源模型,区块链演进新篇章
EOS PowerUp 资源模型于 2020 年秋季进行评估和测试,旨在 “让 EOS 公链更自由高效”。得益于在 EOS 社区的充分讨论,该模型很快就成型并落地实施。
新资源模型类似于让交易费从被矿工赚取模式(工作量证明(POW)区块链)过渡到了网络代币持有人赚取模式。“根据使用情况和存入的代币数量,你赚取的费用可以抵消你的账户使用费用。与此同时,系统多出了很多可用资源。”
2 资源获取方式比较
目前有 3 种方式可以获取链上资源,分别是 PowerUp 租赁、REX 租赁和自己抵押。PowerUp 中租赁的资源有效期 24 小时,REX 中租赁的为 30 天,自己抵押用完后 24 小时刷新恢复。
其中,PowerUp 是最划算的方式。其他两种还可以使用但不划算。
以下是 Anchor 钱包的开发者为我们做的三种 CPU 获取方式的成本对照表,它很好了说明了为什么其他两种方式不划算:
PowerUP 中租赁 | REX 中租赁 | 自抵押 |
花费 0.0003 eos | 花费 8.7721 eos | 抵押 1113.4000 eos |
获得 1 ms 24 小时有效 | 获得 1 ms 30 天有效 | 获得 1 ms 长期,用完 24 小时刷新 |
一般情况下,你需要先使用 PowerUp 租赁好所需资源,才能够提交交易请求。不过,有些钱包可以帮助用户管理资源,无需用户提前准备。比如 Anchor 钱包会为用户提供一定量的免费资源,并且用完这些免费资源,资源不足时,会后台处理资源问题,将资源费用打包成 “矿工费” 让用户确认购买,而无需用户单独操作租赁或购买资源。
3 资源报错解决办法
如果在提交交易请求是出现 RAM, CPU 或 NET 不足的报错,你就需要充值你账号的资源才能够继续。我们前面提到,使用 PowerUp 获取资源是最高效的,所以这里就讲一下通过 PowerUp 获取资源的方法。
注意:本教程主要针对 CPU 和 NET 问题,如果是 RAM 不足,请参考教程《怎么交易 RAM?》购买。
3.1 使用应用内免费资源
为了提升用户体验,生态内的很多区块链浏览器、应用以及钱包都会为用户提供一定量的免费资源。比如 bloks、EOSAuthority、Defibox、DFS 等等。
EOSAuthority 在 2021 年 4 月推出了免费交易服务。为了让他们这个免费交易服务能够持续,你可以向他们的 EOS 账号 cpuauthority
捐款。
需要提醒的是,要使用这些免费资源,它们中的有些可能需要你找到它们的免费资源服务开关,打开开关才能够使用
3.2 免费领取
如果只需少量的资源,通过 eospowerup.io 免费领取。每个 EOS 账号每 24 小时可以免费领取两次。
该服务由 boid.com 和 EOS 社区赞助。为了让该服务能够持续,你可以向 EOS 账号 eospowerupio
捐款。捐款时请在 memo 中填写 donation
。当然,更好的方式是向他们 Pomelo 的捐款提案捐款:https://pomelo.io/grants/eospowerupio
领取方法:
网页领取:https://eospowerup.io/free 进入该网页,在网页中下方的
EOS Account Name
输入框填入你的账号,然后点击下方的POWERUP
按钮即可完成充值。电报机器人领取:在电报 app 中搜索机器人用户名
eospowerupbot
或直接点击本链接跳转找到机器人。根据提示发送命令,只需简单几步即可领取完成。
3.3 自费租赁
如果您需要的资源较多,免费资源无法满足你的需求,你就需要通过 PowerUp 自费租赁资源了。方法如下:
eospowerup.io 自动资源服务:访问 https://eospowerup.io/auto 页面,EOS 钱包授权登录。在
PowerUp Balance
板块中的Pre-Pay EOS
输入框输入要预付的资源费用,再点击+ ADD FUNDS
充值对应数量的资金。充值少量 EOS 即可。然后,在Watchlist
板块点击+ ADD WATCH ACCOUNT
绿色按钮,在弹窗输入需要自动资源服务的账号,钱包签名确认。这样,这个账号未来需要交易就会被自动充值资源。该服务可以自动充值 CPU、NET 和 RAM 三种资源。通过 bloks 租赁:访问 https://bloks.io/wallet/powerup 页面,右上角 EOS 钱包授权登录。在
Receiver
输入框输入需要租赁资源的账号,在Amount of CPU to PowerUp (in EOS)
和/ 或Amount of NET to PowerUp (in EOS)
输入数量(貌似无论输入多少都是一次租赁 0.0001 EOS,请在下面的Total fee
确认)。最后点击PowerUp for 1 day
蓝色按钮,弹窗钱包签名确认即可。通过 EOS Authority 租赁:访问 https://eosauthority.com/power 页面,勾选
Choose how much resource you need
以输入资源数量填写需要租赁的数量,或者勾选Choose how much to pay (approx)
以输入支付 EOS 的金额的方式填写。填写完成后,在ESTIMATE
下方核对费用和将获得的资源数量,确认无误后点击Pay for Power
蓝色按钮,在弹窗中钱包签名确认即可。
3.4 用带资源管理功能的钱包
很多钱包都带有自己的资源管理功能,也有很多会提供免费的资源。
比如安装 Anchor 钱包 v 1.2.0 或更高版本,每天可以给每个账号提供 5-10 次免费交易(由其开发团队 Greymass 赞助)。
此外,用完这些免费资源,资源不足时,Anchor 钱包会后台处理资源问题,将资源费用打包成 “矿工费” 让用户确认购买,而无需用户单独操作租赁或购买资源。使用这种方式,每笔交易收取少量费用(≈0.01 EOS),就能顺畅完成交易。如果账号中 EOS 不足,将会出现 “overdrawn balance” 报错。你需要在账号中保留少量的 EOS,以方便交易。
作者: Charles Arroyo-Bishop
编辑: Markus Hinrichs
翻译: SHE/ Josh Chung
资源与引用:
EOS power up model explained(EOS PowerUp 资源模型解析,eos.io)
Bloks.io 区块链浏览器
EOSAuthority 区块链浏览器
相关指南由 Everstake 团队提供。