-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extension mechanism for HTTP filters based on dynamic loading #24230
Comments
Dynamic loading is tracked here: #2053. There is no objection to add this but someone needs to do the work. I would like to see native Rust filter support but that is orthogonal IMO. Static linking for that would work fine also. |
Thanks for the link to the original dynamic loading issue! Indeed, "support" for Rust in not tightly coupled. Added it just as one of the possible ways to start adoption of the language. Can we leave this issue open? It's nice to keep a global goal of supporting various loadable Envoy modules during design, but can be handy to have smaller goal to make some progress. |
Sure that's fine. |
Commit Message: dynamic_modules: adds initial object loading logic Additional Description: This is the very first commit of the dynamic loading feature discussed among community members. This is the effort to upstream the playground repository https://github.com/mathetake/envoy-dynamic-modules as an Envoy core extension. Series of commits will follow this little by little. #2053, #24230, #32502 Risk Level: N/A (not compiled into the final build yet) Testing: unit Docs Changes: N/A Release Notes: N/A Platform Specific Features: N/A [Optional Runtime guard:] [Optional Fixes #Issue] [Optional Fixes commit #PR or SHA] [Optional Deprecated:] [Optional [API Considerations](https://github.com/envoyproxy/envoy/blob/main/api/review_checklist.md):] --------- Signed-off-by: Takeshi Yoneda <[email protected]>
Commit Message: dynamic_modules: adds initial object loading logic Additional Description: This is the very first commit of the dynamic loading feature discussed among community members. This is the effort to upstream the playground repository https://github.com/mathetake/envoy-dynamic-modules as an Envoy core extension. Series of commits will follow this little by little. envoyproxy#2053, envoyproxy#24230, envoyproxy#32502 Risk Level: N/A (not compiled into the final build yet) Testing: unit Docs Changes: N/A Release Notes: N/A Platform Specific Features: N/A [Optional Runtime guard:] [Optional Fixes #Issue] [Optional Fixes commit #PR or SHA] [Optional Deprecated:] [Optional [API Considerations](https://github.com/envoyproxy/envoy/blob/main/api/review_checklist.md):] --------- Signed-off-by: Takeshi Yoneda <[email protected]> Signed-off-by: Martin Duke <[email protected]>
Commit Message: dynamic_modules: adds initial object loading logic Additional Description: This is the very first commit of the dynamic loading feature discussed among community members. This is the effort to upstream the playground repository https://github.com/mathetake/envoy-dynamic-modules as an Envoy core extension. Series of commits will follow this little by little. envoyproxy#2053, envoyproxy#24230, envoyproxy#32502 Risk Level: N/A (not compiled into the final build yet) Testing: unit Docs Changes: N/A Release Notes: N/A Platform Specific Features: N/A [Optional Runtime guard:] [Optional Fixes #Issue] [Optional Fixes commit #PR or SHA] [Optional Deprecated:] [Optional [API Considerations](https://github.com/envoyproxy/envoy/blob/main/api/review_checklist.md):] --------- Signed-off-by: Takeshi Yoneda <[email protected]> Signed-off-by: asingh-g <[email protected]>
Envoy currently provides extension mechanisms based on WASM and Lua. Approach for GoLang is under discussion as well: #15152.
Taking into account that small footprint, high performance are essential for using Envoy as a sidecar and ongoing work on GoLang extension (#22573), it looks reasonable to work on support for extension mechanism based on dynamic loading as well. For example, for using Rust as the language for creating custom filters (#12155). Envoy already has support for dynamically loading opentracing libraries: #2252.
What's your opinion regarding introducing such an extension mechanism for HTTP filters?
The text was updated successfully, but these errors were encountered: