go-graphite / go-carbon

Golang implementation of Graphite/Carbon server with classic architecture: Agent -> Cache -> Persister
MIT License
801 stars 126 forks source link

Use intermediate chan to expedite gRPC render cache #522

Closed emadolsky closed 1 year ago

emadolsky commented 1 year ago

Before this commit, render responses were cached when the whole response was streamed to the client. This caused slowing requests waiting for that cache to be populated. Now, by using an intermediate channel when caching is enabled, we do not wait until the request is streamed.