Files
sablier/docs/plugins/overview.md
Alexis Couvreur 3891027e23 feat(plugin): add proxywasm plugin (#284)
* feat(plugin): add `proxywasm` plugin

The `proxywasm` plugin is a WASM Filter following the ProxyWasm ABI Specification using the proxywasm go sdk

This allows extensibility with any reverse proxy who implements the ProxyWasm ABI Specification.

The current WASM Filter was successfully tested with APISIX, Envoy, Nginx with ngx_wasm_module from Kong and Istio.

Fixes #145
2024-10-01 17:30:14 -07:00

2.4 KiB

Reverse Proxy Plugins

What is a Reverse Proxy Plugin ?

Reverse proxy plugins are the integration with a reverse proxy.

?> Because Sablier is designed as an API that can be used on its own, reverse proxy integrations acts as a client of that API.

It leverages the API calls to plugin integration to catch in-flight requests to Sablier.

Reverse Proxy Integration

Available Reverse Proxies

Reverse Proxy Docker Docker Swarm mode Kubernetes
Apache APISIX
Caddy
Envoy
Istio ⚠️
Nginx (NJS Module)
Nginx (WASM Module)
Traefik
ProxyWasm

Fully compatible

⚠️ Partially compatible

Should be compatible (but not tested)

Not compatible

Your Reverse Proxy is not on the list? Open an issue to request the missing reverse proxy integration here!

Runtime and Compiled plugins

Some reverse proxies have the capability to evaluate the plugins at runtime (Traefik with Yaegi, NGINX with Lua and JS plugins) which means the reverse proxy provides a way to consume the plugin directly.

Some others enforce you to rebuild your reverse proxy (Caddy).