本文整理匯總了Golang中h12/me/kpax/model.Cluster.LeaderIsDown方法的典型用法代碼示例。如果您正苦於以下問題:Golang Cluster.LeaderIsDown方法的具體用法?Golang Cluster.LeaderIsDown怎麽用?Golang Cluster.LeaderIsDown使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類h12/me/kpax/model.Cluster
的用法示例。
在下文中一共展示了Cluster.LeaderIsDown方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: Produce
func (p *Payload) Produce(c model.Cluster) error {
leader, err := c.Leader(p.Topic, p.Partition)
if err != nil {
return err
}
if err := p.DoProduce(leader); err != nil {
if IsNotLeader(err) {
c.LeaderIsDown(p.Topic, p.Partition)
}
return err
}
return nil
}
示例2: Fetch
func (o *OffsetByTime) Fetch(c model.Cluster) (int64, error) {
leader, err := c.Leader(o.Topic, o.Partition)
if err != nil {
return -1, err
}
offset, err := o.DoFetch(leader)
if err != nil {
if IsNotLeader(err) {
c.LeaderIsDown(o.Topic, o.Partition)
}
return -1, err
}
return offset, nil
}
示例3: Consume
func (m *Messages) Consume(c model.Cluster) (MessageSet, error) {
leader, err := c.Leader(m.Topic, m.Partition)
if err != nil {
return nil, err
}
ms, err := m.DoConsume(leader)
if err != nil {
if IsNotLeader(err) {
c.LeaderIsDown(m.Topic, m.Partition)
}
return nil, err
}
return ms, nil
}