LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资讯 > 有链YOUChain公测网与以太坊智能合约实测对比

有链YOUChain公测网与以太坊智能合约实测对比

2019-12-18 YOUChain 来源:区块链网络

1 智能合约部署

2 通过智能合约部署比较以太坊和YOUChain GAS费

3 智能合约gas费用估算的2种方法(需要的可以看看)

YOUChain在12月16日上线了名为MarcoPolo的公测网。

总说收费低收费低,今天就测一下。

公测网发布了,意味着已经具备主网上线的条件,所以我们以公测网与以太坊智能合约进行实测对比。

以太坊智能合约部署及GAS

我们用以太坊的测试网Rinkeby 实时的做一次测试,就执行一句简单的程序。如下图编译成功后开始部署。

可以在钱包中看到部署的扣费请求(下图),一共需要0.000168ETH(约0.14人民币)。也就是说用以太坊网络仅仅执行一条简单的语句就需要0.14人民币/次。

从钱包中查看本次智能合约,如下图,花费了168324*1=168324Gwei,得出了上文的0.000168ETH的GAS费.

wei是最小的以太坊单位。

目前的wei建议价格如下:

(数据来自https://ethgasstation.info/index.php)

YOUChain智能合约部署

(顺便手把手教你部署一次合约)

注:以下操作一定要用谷歌浏览器

01、https://dev.iyouchain.com/zh/youwallet/browser-extension.html 安装钱包

02、有了钱包账户就在钱包点击“存入”,可以领取测试网络的100YOU用于接下来的智能合约的部署。

03、打开YOUChain的IDE编译器 https://ide.iyouchain.com/

点击左上角“+”号新建一个 .sol文件,命名随意。

04、把这几行代码(够短吧)粘贴到如图的框里,然后点击右边的“开始编译”

pragma solidity ^0.4.25;

contract YOUFen{

string Myname = "easy";

function getName() public view returns(string)

{

return Myname;

}

}

出现下图部分就是编译成功了

05、如图选择部署环境“Injected YOUChain”,如果你前面钱包安装没有问题的话,“环境”下面的“账号”浏览器会自动帮你填写的。

直接点击“确认部署”。

06、弹出钱包,点击“确认”

07、下方出现如下图{"blockHash":" 就是成功了 你可以将该hash值复制到区块链浏览器中搜索查看你的智能合约。

恭喜你成功部署智能合约!

该代码与刚刚部署在以太坊公测网络的代码完全相同,来看看该合约部署在YOUChain公测网络花费了多少gas费。

在钱包中点击刚刚部署的合约,发现一共消耗了192736Glu,lu是YOU最小的单位,1YOU=10^18lu,1Glu=10^9lu。所以刚刚一共消耗了0.000192736YOU(约0.00006元)相比以太坊的0.14元也就“略低”一点吧。我使用的环境,YOUChain ide 和 remix 虚拟机版本不一样,所以数量上稍微有差距,但不会是数量级的差异。

也就是说以该程序为例的话,在以太坊上部署合约的成本是在YOUChain上部署合约成本的2000多倍。(实际可能因各种因素有些许差异。)


第2种GAS费预估的方法

01 通过 rpc

curl -X POST \

http://test-node.iyouchain.com \

-H 'Content-Type: application/json' \

-d '{

"jsonrpc": "2.0",

"id": 1,

"method": "you_estimateGas",

"params": [

{

"data": "0x智能合约数据"

}

]

}

02 通过youchain.js

const YOUChain = require('youchain');

const solc = require('solc');

const fs = require('fs');

const youchain = new YOUChain('http://test-node.iyouchain.com');

const address = '0x59677fd68ec54e43ad4319d915f81748b5a6ff8b';

const contractWrap = (content) => {

return {

language: 'Solidity',

sources: {

'Adoption.sol': {

content

}

},

settings: {

outputSelection: {

'*': {

'*': ['*']

}

}

}

};

};

fs.readFile('Adoption.sol', 'utf8', async (error, data) => {

let output = JSON.parse(solc.compile(JSON.stringify(contractWrap(data))));

output = output.contracts['Adoption.sol']['Adoption'];

const contract = new youchain.you.Contract(output.abi);

console.log('object: ', output.evm.bytecode.object);

const encodeABI = contract

.deploy({

data: output.evm.bytecode.object,

arguments: []

})

.encodeABI();

youchain.you.estimateGas({

from: address,

data: '0x' + encodeABI

}).then(data =>{

console.log("estimateGas",data);

});

});

—-

编译者/作者:YOUChain

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...