envoy
envoy copied to clipboard
admin: streaming C++ API
Currently the admin API is designed so the implementation must collect and return the entire response in one contiguous block. This means that very long responses such as /stats and /config_dump may introduce significant delay and memory pressure.
Specificallly:
https://github.com/envoyproxy/envoy/blob/7bd0c0f4fe6b30e88a77c5739a70a78bc7400ef8/source/exe/main_common.h#L52
https://github.com/envoyproxy/envoy/blob/7bd0c0f4fe6b30e88a77c5739a70a78bc7400ef8/envoy/server/admin.h#L254
These two interfaces should be changed so they allow for streaming. Note that we have a dependence on the current non-streaming versions so we might need to have both old and new versions at least temporarily.
This is related to https://github.com/envoyproxy/envoy/issues/31082
I have a prototype of this interface locally. Want to get some internal review then I'll publish a PR.
This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or "no stalebot" or other activity occurs. Thank you for your contributions.