打字猴:1.703876276e+09
1703876276 —minergpus用于指定挖矿使用的GPU。为了得到GPU列表,可以使用geth gpuinfo命令。每个GPU需要1~2GB的RAM。默认只使用CPU,而不使用GPU。
1703876277
1703876278 2.快速同步
1703876279
1703876280 在写本书时,区块链大小大约为30GB。如果用户的网速慢,则下载需要花费几个小时甚至几天。以太坊实现了一种快速同步算法,可以更快地下载区块链。
1703876281
1703876282 快速同步(fast synchronization)不下载整个区块,而只下载区块头、交易凭证和最新的状态数据库。因此用户不需要下载和重播全部交易。为了检查区块链的真实性,该算法在每一个已定义的区块序号之后下载一个完整的区块。要更深入地学习快速同步算法,请访问https://github.com/ethereum/go-ethereum/pull/1889。
1703876283
1703876284 为了在下载区块链过程中使用fast sync,用户需要在运行geth的过程中使用—fast。
1703876285
1703876286 出于安全原因,fast sync只在初始同步时运行(即该节点自身的区块链为空时)。在节点成功与网络同步后,fast sync就永远禁用了。作为一项额外的安全功能,如果在枢轴点(pivot point)附近或者之后快速同步失败,就会禁用fast sync,然后节点返回到完整的、以区块处理为基础的同步。
1703876287
1703876288
1703876289
1703876290
1703876291 区块链项目开发指南 [:1703875287]
1703876292 区块链项目开发指南 2.16 以太坊钱包
1703876293
1703876294 以太坊钱包是一个以太坊UI客户端,它允许用户进行创建账户、发送以太币、部署合约、调用合约方法等操作。
1703876295
1703876296 以太坊钱包与geth捆绑在一起。运行以太坊时,它会尝试发现一个本地geth实例并与之连接;如果它不能发现geth正在运行,它就启动自己的geth节点。以太坊钱包使用IPC与geth通信。geth支持以文件为基础的IPC。
1703876297
1703876298
1703876299 如果在运行geth时更改数据目录,就是也在更改IPC文件路径。所以为了让以太坊钱包发现并连接到geth实例,需要使用—ipcpath选项指定IPC文件位置为其默认位置,这样以太坊钱包可以发现它;否则,以太坊钱包就不能发现它,将启动自己的geth实例。为了发现默认IPC文件路径,运行geth help,它会显示—ipcpath选项的默认路径。
1703876300
1703876301 请访问https://github.com/ethereum/mist/releases下载以太坊钱包。它适用于Linux、OS X和Windows操作系统。与geth一样,它有两种安装方式:二进制安装和脚本安装。
1703876302
1703876303 以太坊钱包的示意图如图2-1所示。
1703876304
1703876305
1703876306
1703876307
1703876308 区块链项目开发指南 [:1703875288]
1703876309 区块链项目开发指南 2.17 浏览器钱包
1703876310
1703876311 浏览器钱包(Mist)是以太坊、Whisper和Swarm的一个客户端,它允许用户发送交易、发送Whisper信息、检查区块链等。
1703876312
1703876313 Mist和geth之间的关系类似于以太坊钱包和geth。
1703876314
1703876315 Mist最热门的功能是它带有浏览器。目前,浏览器中运行的前端JavaScript可以使用web3.js库(该库为其他应用提供以太坊操作台的JavaScript API与geth通信)访问geth节点的web3 API。
1703876316
1703876317 Mist的基本思想是创建第三代Web(Web 3.0),即使用以太坊、Whisper和Swarm替代中心化服务器端,这样就不需要服务器端了。
1703876318
1703876319
1703876320
1703876321
1703876322 图2-1 以太坊钱包的示意图
1703876323
1703876324 Mist的示意图如图2-2所示。
1703876325
[ 上一页 ]  [ :1.703876276e+09 ]  [ 下一页 ]