-
Notifications
You must be signed in to change notification settings - Fork 336
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
Cache cluster topologies #374
Comments
@msau42 I think this refers to these lines of codes? If I understand correctly, we would like to cache topology key/value pairs for a cluster, and they are all node labels, so we should cache all node labels and then select according to requested topology keys. This will make unnecessary to extract requested topology keys from nodes that have at least one requested topology key, we may able to select values of requested topology keys from the informer with one list method call. But I'm not sure about benefits vs complexity tradeoff since we already use the informer for Nodes. |
Yes, basically anytime we have to list, like here also. The performance benefit should theoretically show up when: 1) you have a lot of nodes and 2) you have very few topologies compared to nodes (like zones). But agree, it may be good to write a performance benchmark test first so we can compare the performance when you have to List() nodes every time you provision vs listing topologies from a cache |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/remove-lifecycle stale |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/lifecycle frozen |
Once we move CSINode and Node to informers, we could potentially cache the topologies available in the cluster instead of having to List() and iterate through them every time we provision.
/kind feature
The text was updated successfully, but these errors were encountered: