以太坊geth dev模式

前言

上一篇介绍了如何使用geth搭建以太坊私有链,以及geth控制台的一些命令。
传送门:使用geth搭建以太坊私链

这篇将介绍一些geth的开发者模式,也就是dev模式。

dev模式

dev 模式,也叫回归测试模式,主要用来给开发人员提供一个方便的开发测试环境。在dev模式下,可以轻松的获得以太币,方便发起交易,交易也会被快速的打包,节省时间方便验证。

1.创建dev私链所在目录

@ubuntu:~$ cd Project
@ubuntu:~/Project$ mkdir myDevChain

注意:这一步很关键,如使用开发者账户创建私链,需要新建一个目录,不然会报这样的错误:Fatal: Failed to unlocked developer account: could not deceypt key with given passphrase.

2.启动dev模式

@ubuntu:~$ geth --datadir --dev console 2>output.log

查看启动log,在 dev 模式下,启动节点后,系统默认提供一个开发者账号,这个账号会作为当前的 coinbase 账号,在 keystore 目录下也有对应的加密私钥文件。

3.dev挖矿

dev启动有一些令人迷惑的地方,在 dev 默认模式启动的情况下,已经开启了挖矿,因此当再执行挖矿命令: miner.start() 时会返回 null。

大家注意,output.log中最后一条

INFO [10-18|10:56:47.690] Sealing paused, waiting for transactions 

这就是默认启动 dev 模式的一个特性。geth 节点的开发者为了给测试环境提供一个更友好的操作:只有发过来交易,系统才会挖矿打包,如果未发送交易过来,就不会去挖矿打包。这样不用被一些并没有交易的区块刷屏了。

但是此模式有一个弊端,我们知道发送一笔交易想让它被确认多次才算成功,如果没交易不挖矿岂不是确认过程很费劲,还需要再在后面发送 N 次交易?这个不用担心,后面会讲到另外一种模式。

4.dev 之自动挖矿

上述启动是在有交易时才挖矿,我们通过改变参数,可以自动挖矿。此参数默认为 0,也就是上面讲的被动挖矿的模式,当有 pending 交易到来才进行挖矿,同时它还有一个参数值 1,主动挖矿。

–dev.period value 开发者模式下挖矿周期 (0 = 有pending状态交易时进行挖矿) (默认: 0)

@ubuntu:~$ geth --datadir --dev --dev.period 1 console 2>output.log

这样就回到常见的自动挖矿的模式了,可以执行miner. stop() 命令来停止挖矿

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值