UOS是国内公链“ulord”的一条侧链,从官方提供的文档分析(https://ulorder.one/uos),技术上UOS和EOS应该太大的不同,但治理规则上对比EOS有所改进,具体技术细节等本人获得更详细的资料后分享,现在看来,UOS最突出的亮点是“侧链”,与EOS不同的是,UOS是服务于ulord生态的,UOS不能独立发行货币,ulord生态也不止UOS一条侧链,主链与侧链,侧链与侧链之间都是通过1:1进行货币交换的。
UOS从2月27号开放注册,内存也在短短两个星期内大涨了一倍,本文就对UOS的内存说道说道。
内存是UOS的稀缺资源,比一般区块链不同的是,UOS把一个交易分为调用交易的动作,以及执行这个动作之后的影响。UOS把调用交易的这个动作记录在区块当中,执行这个动作的影响以数据的形式记录在内存当中。
UOS 交易是怎么产生的?
举个栗子,“222222222222”账户给“uosmobilepro”账户转账。
交易id:4da05d2844854d31d7a6dcbfdd9d25f1784add90a8286c8907b6396bb84171f6
打开区块链浏览器:https://explorer.uosio.org
可以看到,这笔交易包含一个操作,操作名称是”transfer”,操作的提供者为“uosio.token”。操作传入的数据为一个json:
{
"from": "222222222222",
"to": "uosmobilepro",
"quantity": "2000.0000 UOS",
"memo": ""
}
操作名称“transfer”+操作提供者“uosio.token”+操作的传递数据,形成了一个操作的完整描述。“操作”和“动作”一词在本文中是同义的。
上面这个“操作”是记录在区块里面的,但是操作的结果,“222222222222”当前的代币为303,529.5973减少2000,变为301,529.5973UOS。“uosmobilepro”的账户余额增加2000变为2005.6201UOS。本次操作影响的是余额,余额数据存301,529.5973UOS和2005.6201UOS储存在UOS的内存里。
总结一下,一个操作由三部分构成:
1,操作的描述:操作名称+操作提供者+操作的传递数据 存在区块中
2,操作的影响:比如账户余额等数据 存在内存里
3,操作本身:操作的规则,具体怎么影响状态数据,如转账操作,谁加多少谁减多少,其实就是合约本身,这也是存在内存里面的。
所以用户可以设计规则,编写合约,在合约中自定义“影响数据”,他人便可通过调用您的合约,UOS链则会执行合约规则更改“影响数据”。
UOS的内存总量才8G,这个8G是指:所有用户的合约加所有“影响数据”所占总空间能够使用的最大值。所以内存资源是相当珍贵,需要购买。
UOS的内存是怎样收费的呢?
是根据banchor协议进行自动计费的。
公式如下:
得到的容量(Byte) = (当前剩余的容量 * 付款的UOS)/(池中的UOS + 付款的UOS)
得到的UOS = (池中的UOS * 卖出的RAM) / (剩余的容量 + 卖出的RAM)
最开始,内存资金池的初始值为500W,这个500w是一个初始参数,并不代表真实的资金,由第一个公式,当有500W的真实UOS入场内存时,池中的UOS参数为1000W,由此计算出:得到的容量= 总容量/2 = 4GB 。
接下来,详细价格如下表:
作图如下:
由图可知,在内存占用达到6.5G左右,内存价格将会飞速增长,届时UOS内存的价格为14.9个UOS每KByte。
有关扩容的一些猜测
目前UOS的线上用户还没有突破1000,容量占用为4.29G,价格为2.77206674UOS/KB,按照一个合约花费500k算,合约部署的成本大概是1500UOS,折合人民币450元,所以从价格上看内存当前并不算贵。官方暂时也没有正式公布DAPP研发进展,而且项目方在早期已经入场了几十万的UOS,这是为后续的DAPP备粮草的举动。而且更为重要的是,内存的扩容也会增加对服务器的硬件要求,这增加了出块节点的成本。所以,本人大胆猜测,在DAPP没有大量落地,容量占用也没有达到价格增长拐点之前,团队和出块节点应该不会有扩容的想法。