You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
Today dynamic config supports converting config values from primitive types and collections to other Go types.
The conversion code is run every time a value is retrieved and could end up taking up excessive CPU resources.
Describe the solution you'd like
Perform conversion only when values change. Based on discussions with @dnr, the best way to achieve this is to optimize for NotifyingClient implementations (an optional interface for Client).
The concern with this approach is that we would end up with two code paths to maintain and that users that provide an alternative Client implementation would not get the perf benefits. We should be careful if we decide to change the Client interface since it's public and we try not to break API compatibility.
The text was updated successfully, but these errors were encountered:
Is your feature request related to a problem? Please describe.
Today dynamic config supports converting config values from primitive types and collections to other Go types.
The conversion code is run every time a value is retrieved and could end up taking up excessive CPU resources.
Describe the solution you'd like
Perform conversion only when values change. Based on discussions with @dnr, the best way to achieve this is to optimize for
NotifyingClient
implementations (an optional interface forClient
).The concern with this approach is that we would end up with two code paths to maintain and that users that provide an alternative
Client
implementation would not get the perf benefits. We should be careful if we decide to change theClient
interface since it's public and we try not to break API compatibility.The text was updated successfully, but these errors were encountered: