client-go list性能提升

k8s v1.19.0

staging\src\k8s.io\apiserver\pkg\storage\cacher\cacher.go

List方法

staging\src\k8s.io\apiserver\pkg\storage\etcd3\api_object_versioner.go

ParseResourceVersion方法

优化1:设置resourceVersion=0

从kube-apiserver缓存中获取全量数据并返回。
默认client-go list参数是resourceVersion=0&limit=500,resourceVersion=0会使limit=500无效。

优化2:减少数据传输量

list请求通过设置label/namespace/field/分页等条件,在kube-apiserver缓存中过滤,减少数据传输量。

posted on 2024-01-30 22:21  王景迁  阅读(51)  评论(0编辑  收藏  举报

导航