promql-langserver
promql-langserver copied to clipboard
Caching layer for Prometheus metadata API
For performance reasons it is desirable to keep the number of requests to the connected Prometheus instance small.
To achieve that it would be nice to have some kind if in-memory caching layer between the language server and parts of the Prometheus v1 API.
@gotjosh mentioned that reusing the internal data structures of Prometheus implemented here would help reduce the memory footprint of such a cache.
Before working on this should be performed some testing to figure out how much load on the Prometheus server the language server actually causes.