opensergo / opensergo-control-plane

Universal cloud-native microservice governance control plane (微服务治理控制面)
Apache License 2.0
35 stars 23 forks source link

add retry mechanism for pushing config #26

Open jk-tonycui opened 1 year ago

jk-tonycui commented 1 year ago

Add user-define configuration feature and retry feature for pushing config.

The main idea is to add retry ability for stream.SendMsg. From the general perspective, adopt third-party lib go-retry for this feature. Meanwhile, add options feature to store user's configuration.

For the timeout issue, it seems to be set from the client side from the grpc document.


增加了配置传参和配置推送重试的功能。

设计思路是在推动配置的 stream.SendMsg 上增加重试能力,在更通用性以及避免重复造轮子,采用了 go-retry 的三方库。同时为了实现重试等功能的可配置,在整个控制面上增加了 options 功能来保存用户配置。

grpc的超时设置翻看了下grpc文档以及源码,初步得出的结论是要在客户端上设置,配置推送作为服务端,没看到有拓展的接口可以进行设置。 @sczyh30

CLAassistant commented 1 year ago

CLA assistant check
All committers have signed the CLA.

sczyh30 commented 1 year ago

Could you please sign the CLA here: https://cla-assistant.io/opensergo/opensergo-control-plane?pullRequest=26

sczyh30 commented 1 year ago

And could you please illustrate your design in PR description?