专栏首页WebDevelopertendermint-peers讲解

tendermint-peers讲解

Peer Exchange

Peer Exchange Reactor (PEX)确保与好的peers进行连接和通信

Peer类型

  • persistent peer

长期保持通信的peer,连接失败可自动重拨

  • private peer

私有peer,无需添加到address book,并且不能传播给其它peer

发现(Discovery)

启动时,先连接persistent_peers,如果连接失败,会每隔5s进行重拨几分钟。

如果peer数量小于MaxNumOutboundPeers,将会定期请求自己拥有的peer,如果还是不能有足够的数量,则再次尝试seeds(seeds是固定peers信息,用于开始启动连接)。

监听(Listening)

peers在可配置的ListenAddr地址监听,并在与其它节点握手时,将监听地址、端口信息保存在NodeInfo信息内。

接受的MaxNumInboundPeers数量的peers

地址簿(Address Book)

  • peers通过NodeID(公钥地址)进行追踪
  • 其它peers连接我们或我们连接其它peers都将记录在address book中
  • address book 将被分配在一系列桶(buckets)中,并且区分新旧peers,通过IP组来归类
  • 添加一个新的peer,如果没有空间,会从桶中移除有问题的peer,来生成一个新空间

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • git使用

    1、git init 初始化仓库 2、 git status 查看仓库各文件的状态信息 3、撤销commit的文件 git log显示commit日志

    _simple
  • 使用css3属性处理单词的换行和断词

    _simple
  • git常用命令

    _simple
  • failed to allocate **M (** bytes) from device: CUDA_ERROR_OUT_OF_MEMORY,错误原因及解决方案

    config = tf.ConfigProto(allow_soft_placement=True) gpu_options = tf.GPUOptions(...

    水球喵子
  • 在Windows7中搭建Mysql Cluster

    登录windows时最好用Administor登录(特别是管理节点,用其它用户登录了一次,之后就搭建不了,总是出现"修改不了一些文件的错误"),不然程序没有权...

    克虏伯
  • Linux命令之grep/sed/awk等行转列

       此命令在Linux上执行正常,在Mac上执行无效,原因是因为Mac上的sed是BSD版本,Linux上的是Gnu版本,在Mac上需要使用sed -e 's...

    JouyPub
  • throws 与 throw

    /* * 有些时候,我们是可以对异常进行处理的,但是又有些时候,我们根本就没有权限去处理某个异常。 * 或者说,我处理不了,我就不处理了。 * 为了解决出...

    黑泽君
  • 一文重复一篇四分SCI------基于TCGA和geo的circRNA研究(1)

    1976年首次发现的具有完全闭环结构的RNA。然而,由于传统RNA检测方法的局限性,这些没有poly-A尾巴的转录本长期被忽视。近年来,随着高通量测序技术的发展...

    用户1359560
  • 大数据带你看清孩子内心的四大渴望

    不少人都说现在的孩子越来越难懂了。因为现在的孩子们都很有自己的想法的。你可知道你家孩子内心最渴望的是什么吗?也许读完这篇文章后,你可以和孩子说一声:我懂你~

    华章科技
  • (Python)用Mask R-CNN检测空闲车位

    我住在一个大城市。 但就像大多数城市一样,在这里寻找停车位总是一件很困难的事情。 停车位通常很快被抢走,即使你有一个专门的停车位,朋友们来拜访你也是一件很困难的...

    AI研习社

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动