Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ChannelSupport ¶
type ChannelSupport interface { msgprocessor.Processor Consenter }
频道支持提供支持频道广播所需的支持资源
type ChannelSupportRegistrar ¶
type ChannelSupportRegistrar interface { //BroadcastChannelSupport返回消息通道头,无论该消息是否为配置更新 //如果消息不是可以 //直接处理(如配置和订购者事务消息) BroadcastChannelSupport(msg *cb.Envelope) (*cb.ChannelHeader, bool, ChannelSupport, error) }
ChannelSupportRegistrar为处理程序提供了一种查找通道支持的方法
type Consenter ¶
type Consenter interface { //ORDER接受一条消息或返回一个指示失败原因的错误 //它最终传递到共识链接口 Order(env *cb.Envelope, configSeq uint64) error //configure接受重新配置或返回一个错误,指示失败原因 //它最终传递到共识链接口 Configure(config *cb.Envelope, configSeq uint64) error //waitready阻止等待同意者准备接受新消息。 //当同意者需要临时阻止进入消息时,这很有用,因此 //飞行中的信息可以被消耗掉。如果同意者是 //处于错误状态。如果不需要这种阻塞行为,同意者可以 //只需返回零。 WaitReady() error }
同意者提供通过协商一致发送消息的方法
type Handler ¶
type Handler struct { SupportRegistrar ChannelSupportRegistrar Metrics *Metrics }
处理程序用于处理来自广播AB GRPC服务的连接
func (*Handler) Handle ¶
func (bh *Handler) Handle(srv ab.AtomicBroadcast_BroadcastServer) error
句柄从广播流读取请求,处理它们,并返回对该流的响应
func (*Handler) ProcessMessage ¶
processMessage验证单个消息并使其排队
type Metrics ¶
type Metrics struct { ValidateDuration metrics.Histogram EnqueueDuration metrics.Histogram ProcessedCount metrics.Counter }
func NewMetrics ¶
type MetricsTracker ¶
type MetricsTracker struct { ValidateStartTime time.Time EnqueueStartTime time.Time ValidateDuration time.Duration ChannelID string TxType string Metrics *Metrics }
func (*MetricsTracker) BeginEnqueue ¶
func (mt *MetricsTracker) BeginEnqueue()
func (*MetricsTracker) BeginValidate ¶
func (mt *MetricsTracker) BeginValidate()
func (*MetricsTracker) EndValidate ¶
func (mt *MetricsTracker) EndValidate()
func (*MetricsTracker) Record ¶
func (mt *MetricsTracker) Record(resp *ab.BroadcastResponse)
Click to show internal directories.
Click to hide internal directories.