以太坊的节点分类及Geth的几种同步模式

这篇具有很好参考价值的文章主要介绍了以太坊的节点分类及Geth的几种同步模式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、简介

以太坊数据同步是以节点(peer)作为数据载体存放和传输主要以Header,Body,Reciept组成的数据主体,通过以太坊p2p通信协议管理数据同步事务,最后交给执行器(主动同步会交给Downloader,被动同步会交给Fetcher)执行最后的数据下载任务。

二、节点分类

以太坊节点主要有四种类型,分别是全节点、挖矿节点、轻节点、存档节点,对网络的贡献各有不同。它们共同将信息传递给其他节点,验证交易和EVM状态,并提供保持以太坊网络高效运行所需的基础设施。它们相互联系,以确保都能就网络状态达成一致。因此,拥有更多节点使得网络更强大,更能抵御攻击。以下将分别介绍四种节点。

2.1 全节点

全节点验证交易和EVM状态、验证区块、启动和执行智能合约代码,并在请求时提供网络数据。它们还将以太坊区块链的状态存储到最近的128个区块,并可以根据需要建立历史状态存档。

2.2 挖矿节点(又叫Miner)

挖矿节点是运行挖矿客户软件的全节点。在目前状态下,以太坊通过Ethash 加密算法进行挖矿,采用的是工作量证明机制(POW),挖矿节点与其他挖矿节点争夺算力,以创建下一个区块。一旦创建,新区块将被广播到网络,由其他节点验证,并附加到区块链的末尾。

2.3 轻节点

轻节点是全节点的“轻量”版,只包含区块头数据,比如前一个区块的哈希和时间戳,而不是整个区块数据。它们向全节点发出按需请求,用户需要时才验证状态的某些部分。典型的用途是查看余额、验证交易是否已确认、检查事件日志以及执行其他轻型任务。轻节点很容易由手机或Raspberry Pi等容量较低的设备运行。

2.4 存档节点(archive node)

存档节点是一种“存档模式”下运行的全节点。它们包含与全节点相同的所有数据,但还包含自创始区块(Genesis Block,即第一个区块)以记录整个区块链的所有历史状态数据。

举个例子,如果你想知道以往一百万个区块的以太坊账户余额,那么最快的方法是运行存档节点,然后查询这个数字。虽然全节点可以重建历史区块链状态数据,但这个过程缓慢且低效,而存档节点包含自第一个区块以来的历史数据,它们可以随时轻松地跟踪任一笔交易信息,包括账户余额、智能合约代码、交易数量或特定存储位置的值,同时存档节点还可以无需在区块链上创建交易的情况下测试智能合约代码。

三、同步模式分类

以太坊节点的同步主要有以下三种:

  • fast Enable fast syncing through state downloads

  • light Enable light client mode

  • syncmode full

3.1 Full同步

从创世块到最新区块,获取区块的header,获取区块的body,从创始块开始校验每一个元素,需要下载所有区块数据信息。速度最慢,但是能获取到所有的历史数据。

3.2 Fast同步

获取区块的header,获取区块的body,在同步到当前块之前不处理任何事务。然后获得一个快照,此后,像full节点一样进行后面的同步操作。这种方法用得最多,目的在不要在意历史数据,将历史数据按照快照的方式,不逐一验证,沿着区块下载最近数据库中的交易,有可能丢失历史数据。此方法可能会对历史数据有部分丢失,但是不影响今后的使用。

3.3 Ligth同步

从网络中同步所有区块头,不去同步区块体,也不去同步状态数据,仅在需要相应区块和状态数据时从网络上获取。文章来源地址https://www.toymoban.com/news/detail-419133.html

到了这里,关于以太坊的节点分类及Geth的几种同步模式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • jQuery之添加节点的几种方式

    目录 一、append() 1、基本使用 2、获取一个dom节点然后通过追加到指定元素里面,相当于把这个元素剪切,然后作为追加指定元素中的最后一个子元素 二、prepend() 三、before() 四、after() 五、appendTo() 1、基本使用 把元素追加到父元素里面,并且是最后一个 2、获取一个dom节点然

    2024年02月09日
    浏览(59)
  • MySQL同步ES的几种方案

    MySQL数据同步ES的几种方案 1. 同步双写         与业务耦合深,且业务响应时间长 2. 异步双写         这时可以使用类似MQ这样的中间件,业务主写时向MQ发送一条信息,再由一个聚合服务区消费,最终同步到ES 3. 定时任务         不好配置时间,频率高会出现明显的

    2024年01月20日
    浏览(39)
  • 激光雷达和相机数据时间同步的几种方法

    图1图2为数据时间未校准,使用Matlab 2022b相机和激光雷达联合标定工具箱进行的联合标定(图1为使用4对jpg和pcd文件时的联合标定效果,图2为使用15对jpg和pcd文件时的联合标定效果);图3图4为数据时间已校准后,使用Matlab 2022b相机和激光雷达联合标定工具箱进行的联合标定(

    2024年02月03日
    浏览(94)
  • 以太坊的账户

    以太坊的账户模式 BTC系统是基于交易的账本,这种模式下,系统中没有显式的记录某个人有多少BTC,只能通过UTXO进行推算。这种模式的好处是你有多少钱,你自己都不一定清楚,但实际中,使用起来较为别扭,跟日常体验不太一样呢:A转给B钱的时候,需要说明币的来源。实

    2024年02月06日
    浏览(43)
  • 以太坊的ecrecover预编译合约

    前序博客: ECDSA VS Schnorr signature VS BLS signature ECDSA,全称为Elliptic curve Digital Signature Algorithm,采用Elliptic curve cryptography来实现的数字签名算法。 公私钥对 ( p k , P ) (pk,P) ( p k , P ) ,其中公钥 P = p k × G P=pktimes G P = p k × G , G G G 为所选椭圆曲线的base point。(elliptic curve base po

    2024年02月02日
    浏览(43)
  • 以太坊--2.账户是什么---以太坊的指南针学习记录

    以太坊作为一个区块链项目,有区块链的三个基本要素,也有特殊的两个要素。 基本要素 : 一条区块链,完整记录着所有交易。 由数个节点组成的网络。 一个大家公认的共识算法。 特殊要素 : 每个节点都具备智能合约的环境 随每次交易不断变化的世界状态,世界状态指

    2024年01月18日
    浏览(50)
  • 分析:以太坊的合并后经济学

    简介 在9月15日网络升级之后,以太坊从工作量证明(PoW)转换为权益证明(PoS)共识机制,使网络减少了99.95%的碳足迹。 这也意味着,自合并以来,以太坊的日代币供应量已经减少。 本文将研究新的PoS以太坊网络的供需动态,以及其通缩的现实。 合并前 有很多关于以太坊在合并

    2024年02月02日
    浏览(38)
  • 什么是Ethereum以太坊(ETH)?以及以太坊的一些基础知识

    Ethereum以太坊(ETH)是由Vitalik Buterin所创建,一种允许智能合约和去中心化应用程序(dapps)在其网络上运行的加密货币。 以太坊是仅次于比特币的第二大加密货币,它是一个基于区块链的平台,用于创建去中心化应用程序(dapps)。 比特币被设计成一种货币和价值储存手段,而

    2024年02月03日
    浏览(38)
  • 以太坊编程-Geth

    前提:开发环境为Windows版本 一、下载安装 geth安装官网地址: https://geth.ethereum.org/downloads/  安装时,根据提示一步一步安装即可     安装完成之后,需要进行配置环境变量  二、创世区块部署 新建.json文件:新建记事本,复制粘贴以下内容,再重命名为:genesis.json  其中,

    2024年02月02日
    浏览(35)
  • 基于以太坊的智能合约开发Solidity(基础篇)

    参考教程:基于以太坊的智能合约开发教程【Solidity】_哔哩哔哩_bilibili (1)程序编译完成后,需要在虚拟机上运行,将合约部署好后便可执行刚刚编写的函数。(注意, 合约一旦部署,就会永久存在于区块链上,且不可篡改 ,不过可以销毁) (2)执行完成后,可以得到以

    2024年02月04日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包