mirror of
https://github.com/kubernetes/kubernetes.git
synced 2026-04-27 17:21:07 -04:00
Automatic merge from submit-queue Reuse fields and labels This should significantly reduce memory allocations in apiserver in large cluster. Explanation: - every kubelet is refreshing watch every 5-10 minutes (this generally is not causing relist - it just renews watch) - that means, in 5000-node cluster, we are issuing ~10 watches per second - since we don't have "watch heartbets", the watch is issued from previously received resourceVersion - to make some assumption, let's assume pods are evenly spread across pods, and writes for them are evenly spread - that means, that a given kubelet is interested in 1 per 5000 pod changes - with that assumption, each watch, has to process 2500 (on average) previous watch events - for each of such even, we are currently computing fields. This PR is fixing this problem. |
||
|---|---|---|
| .. | ||
| etcd | ||
| etcd3 | ||
| storagebackend | ||
| testing | ||
| BUILD | ||
| cacher.go | ||
| cacher_test.go | ||
| doc.go | ||
| errors.go | ||
| interfaces.go | ||
| OWNERS | ||
| selection_predicate.go | ||
| selection_predicate_test.go | ||
| util.go | ||
| util_test.go | ||
| watch_cache.go | ||
| watch_cache_test.go | ||