Etcd租约续期的问题

weixin_38065208 weixin_38065208 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
---------------
最近在用Etcd做服务注册和发现的时候发现了一些问题,一直没有头绪,希望各位大佬给点建议,下面直接上代码(逻辑代码已删除)
```golang
resp, err := sdk.client.Grant(context.TODO(), 60)
if err != nil {
log4.Info(" createServerInfo %s Grant error [%v]", pull_path, err)
return err
}

_, err = sdk.client.Put(context.TODO(), pull_path, string(data), etcd.WithLease(resp.ID))
if err != nil {
log4.Info("createServerInfo %s Put error [%v]", pull_path, err)
return err
}

ctx, cancelFunc := context.WithCancel(context.TODO())
ch, err := sdk.client.KeepAlive(context.TODO(), resp.ID)
if err != nil {
log4.Info(" createServerInfo %s KeepAlive error [%v]", pull_path, err)
return err
}
```

我对`KeepAlive`返回的channel做了监听,如果channel关闭会重新注册该路径,但是做压测是时候发现,在服务注册量很大的时候(>1W+),这个channel会一直频繁被关闭,导致服务一直重新注册~ 请问大家有什么解决办法嘛
...全文

相关推荐

评论 1
收藏 已收藏
分享
返回顶部