Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optimize dynamic config value conversion #6756

Open
bergundy opened this issue Nov 5, 2024 · 0 comments
Open

Optimize dynamic config value conversion #6756

bergundy opened this issue Nov 5, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@bergundy
Copy link
Member

bergundy commented Nov 5, 2024

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.

@bergundy bergundy added the enhancement New feature or request label Nov 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant