mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2024-11-21 14:44:00 +00:00
eefae85450
### Describe Your Changes Currently, vmagent always uses a separate `http.Client` for every group watcher in Kubernetes SD. With a high number of group watchers this leads to large amount of opened connections. This PR adds 2 changes to address this: - re-use of existing `http.Client` - in case `http.Client` is connecting to the same API server and uses the same parameters it will be re-used between group watchers - HTTP2 support - this allows to reuse connections more efficiently due to ability of using streaming via existing connections. See this issue for the details and test results - https://github.com/VictoriaMetrics/VictoriaMetrics/issues/5971 ### Checklist The following checks are **mandatory**: - [ ] My change adheres [VictoriaMetrics contributing guidelines](https://docs.victoriametrics.com/contributing/). --------- Signed-off-by: Zakhar Bessarab <z.bessarab@victoriametrics.com> Co-authored-by: Roman Khavronenko <roman@victoriametrics.com> |
||
---|---|---|
.. | ||
testdata | ||
api.go | ||
api_watcher.go | ||
api_watcher_test.go | ||
common_types.go | ||
endpoints.go | ||
endpoints_test.go | ||
endpointslice.go | ||
endpointslice_test.go | ||
ingress.go | ||
ingress_test.go | ||
kubeconfig.go | ||
kubeconfig_test.go | ||
kubernetes.go | ||
node.go | ||
node_test.go | ||
pod.go | ||
pod_test.go | ||
pod_timing_test.go | ||
service.go | ||
service_test.go |