envoyproxy / envoyproxy/envoy-mobile
performance: create fully-bridged types for headers and data
- Dominant language
- Java
- Stars
- 566
- Forks
- 85
- PR merge metrics
- No merged PRs in 30d
Description
Instead of converting from a platform type to a bridge (c) type to an Envoy-native type when crossing library layer boundaries, instead we could create platform and Envoy-native implementations backed by the bridge type, such that conversion would be largely unnecessary. This could substantially reduce call overhead.
This optimization could be especially beneficial for platform-bridged filters, where frequent additional traversals of library boundaries would occur with header/data payloads. Note that at present the interfaces for platform filters utilize immutable types for payloads; these would need to change to mutable types (which Envoy utilizes for native filters) to realize this benefit.
Contributor guide
Assessment
This issue has not been assessed yet.