区块链研习社EOS区块链应用EOS开发系列

【一五一十】 为什么转账失败:大白话解释EOS的资源

2018-06-16  本文已影响32人  荆凯_EOS42

为什么你有了EOS账号,却转不了账? 为什么会遇到错误提示说带宽资源不足?这篇文章,我们就来了解一下,什么是EOS的资源模型,以及,为什么说理解了资源模型,你才能够从EOS中赚到更多。

这几天帮一些朋友创建了账号之后,经常遇到朋友询问这样的问题。这篇文章里面,我们来讲解一下如何通过实际操作来对EOS的资源分配机制有一个基本的理解。

resource.jpeg

EOS的资源分配与我有什么关系?

关系大了去了,简单粗暴来讲,你对EOS资源分配机制的理解的深浅,关系到你能够在EOS赚钱的多少。

如果你持有EOS,比如1万个EOS,根据EOS的设计,你的EOS可以租赁给别人(比如开发者或者其他的使用者),收取EOS租金,当包租公包租婆,你的EOS还是你自己的,仍然放在你的钱包里,却仍然能够通过收取租金得到额外的收益,你说,要不要了解一下这种机制?

其次,EOS的资源模型,意味着想要使用EOS的资源,就必须要将EOS锁定(抵押)才可以,这意味着,不论是自有EOS,还是从别人那里租赁EOS,DAPP的开发者要使用EOS的资源,就必须锁定一部分EOS,想要用的资源越多,需要锁定的EOS就越多。

再从投票的角度去理解,想要投票给EOS节点,也需要锁定EOS(即抵押EOS),才可以有投票的权利;EOS节点收到收益的激励,也会想方设法的鼓励自己的支持者锁仓EOS,来为自己投票。

这种种的机制下,EOS的流通性收到了很大的抑制。今天文艺女青年圊呓语也提到了很重要的一点,投票率是一个很重要的指标,可以间接反应出来EOS锁仓的比例。而后续会出来更直观的方式,直接显示有多少的EOS是锁定的(希望哪个做EOS门户网站的,可以加上这个功能)。

从上面的信息里,我们可以认识到,EOS的资源分配机制,跟你从EOS上面能够赚到多少的收益有直接的关系,你说,要不要了解一下?

钢铁侠今早的文章里面,也专门写到了EOS的三重锁仓机制,推荐阅读。

什么是EOS的资源?

具体来说,就是,使用EOS的系统或说区块链,你需要用到的一些东西。

以文章开头所提到的转账为例,转账,需要用到带宽资源来传输信息,需要用到cpu资源来计算账户余额的变化,需要RAM(即运行内存,通常称为运存)来进行状态的记录。而且,假设是使用币乎这样的应用的话,还会涉及到额外的资源,称为存储资源, 用来在区块链之外,存放文章内容、图片等信息。

离开了必备的资源,你的转账操作会无法成功,就如同手机欠费了无法给你的女神打电话一样的道理,EOS资源不足,你也无法使用EOS网络来给心爱的姑娘转账。

EOS的资源有什么?

EOS中,有四种资源: CPU, 带宽,RAM,存储。

当然,也有另外一种分类的方式,会将投票也算入到资源之中,不过我认为由于可用的投票权重,是根据在cpu和带宽上所抵押的eos的数量来计算的,所以,为了便于理解,不把投票也算作是一种资源了。

EOS的资源可以分为两类:一类是可以借给别人使用的(cpu,带宽),我们称之为可转让资源;另一类是只能够自己使用,无法借出给他人, RAM和存储资源,属于这一类,我们可以称之为,不可转让资源。

EOS不是免费的么?为什么还要消耗资源?

EOS的免费是指,你可以抵押EOS来换取资源的使用权;如果不想用了,你也可以取回原有的EOS。

而根据你所抵押的EOS的数量不同,你能够应用的资源的份额也是不同的,抵押的越多,能够用的资源越多。

举个不甚恰当的比喻,假设存在一个爱心爆棚的房东,你只需要交押金就能够住房子,你交的押金越多,住的房子越大。就是这个道理了。

EOS的资源模型的设计中,可以抵押EOS(你可以简单理解为押金),来换取对应EOS的使用资源。我们看一下实际的例子

https://eosflare.io/account/g44tkmrwgyge

resource-3.png

图中你可以看到,这个账户抵押了0.84EOS,获得了374 KB的带宽资源。已经使用了534 字节的带宽资源了。

如果这374kb的资源用光,而不继续增加抵押的EOS的话,那么,就没有带宽资源可以用,因为,分配给这个账户的份额已经用掉了,如果想要使用更多资源,对不起,再抵押一部分EOS吧。

对于其他的资源,道理也是一样,有多少的资源,是根据你抵押在这一资源上的EOS的数量来计算的。

EOS中两类资源有什么不同?

可转让资源(cpu/带宽),和不可转让资源(RAM/存储), 虽然本质上都是抵押EOS来换取的,但是这两类资源仍然存在许多不同之处,主要体现在:

我们分别来说。

CPU跟带宽这种可转让的资源,是采用比例制的。比如,当前总共有10万个EOS抵押用于获得CPU的使用权,而你自己的就锁定(抵押)了1万个EOS在CPU资源上。

那么,你能够使用全网所有cpu资源的10%的计算能力。带宽也是一样。

同时,你抵押了EOS,想要赎回,那么,就需要再发起赎回申请之后,等待三天,你的EOS才能变成可以流通的,才能够转账。

而RAM跟存储这类不可转让的资源,就不同了。由于现在EOSIO的软件中还没有实现存储这部分,我们先单说RAM。

在计费方式上,RAM是使用了Bancor算法,简单来说,就是根据当前的EOS的总量,跟可用RAM的总量,来计算出来RAM的“价格”,当RAM剩余量很少的时候,价格就会飙升。Bancor算法稍微复杂一些,我后面会专门写一篇文章讲解,你可以简单理解为,一个EOS能够换得多少的RAM,是要根据RAM的稀缺程度来计算的,这么理解就足够了。

而由于RAM跟存储这类资源是不可以转让的,所以,不存在延迟期。
就是说,如果你需要释放一部分RAM,只能是直接卖出,而对应的EOS立即会变成可以流通转账的了,不需要三天的延迟期。

资源不够用,我怎么能够抵押EOS呢?

现在就我所见,还没有太多的钱包支持资源操作。Token Pocket曾经支持自主操作,不知为何昨天升级之后反而取消了这一功能,实在费解。

当前所知道的是HalloWallet可以支持自主操作,抵押EOS,获得cpu/带宽和RAM资源。感兴趣的可以试一下,如下的界面。

resource-2.png

另外,https://toolkit.genereos.io/staking 这一eos工具箱网站,也可以配合Scatter钱包,实现资源的抵押/赎回操作,感兴趣的话,留言给我。如果有比较多人感兴趣,我后续写篇详细一点的教程。

resource-4.png

在Scatter钱包的页面中,点击accept确认交易.

resource-5.png

操作成功。

resource-6.png

可以查看这笔抵押EOS的操作:

https://eospark.com/MainNet/tx/b515e204a6e35d3047faa5afa16040844bd8be7a817aaf38626a529034bdd823

上一篇下一篇

猜你喜欢

热点阅读