Tendermint源码分析——启动流程分析
准备参数 cli参数: node --proxy_app=dummy --home "C:\Users\Administrator\datadir\tendermint" Tendermint的cli解析使用cobra库! flags vs args 让我们将程序定格在(c *Command) ExecuteC【/vendor/github.com/spf13/cobra/command.go#】…
准备参数 cli参数: node --proxy_app=dummy --home "C:\Users\Administrator\datadir\tendermint" Tendermint的cli解析使用cobra库! flags vs args 让我们将程序定格在(c *Command) ExecuteC【/vendor/github.com/spf13/cobra/command.go#】…
1. peer.go 首先定位到 tendermint/p2p/peer.go 文件,来看 peer 结构体,peer 实现了 Peer。Peer 负责发现节点,广播内容, 接收内容。 // peer 实现了 Peer,Peer是一个接口,表示连接在 reactor 上的 peer // 需要执行一次握手连接,在使用 peer 之前. type peer struct { // 实现了服务的启动、…
tendermint, switch & reactor SwitchInitializationacceptRoutine - inboundDialPeerWithAddress - outboundaddPeer ReactorConsensusBlockchainPEXMempoolEvidence These two parts demonstrate how tendermin…
tendermint, consensus reactor ChannelMessagesOnStartPeerStateAddPeerReceiveSwitchToConsensus The consensus reactor is the service for consensus p2p messages. Channel StateChannel = byte(0x20) DataChan…