Skip to main content

Crate rws_proxy

Crate rws_proxy 

Source
Expand description

The proxy and operations layer of rust-web-server: reverse proxy, config-driven routes, load balancing, L4 and WebSocket proxies, the admin API, cluster sync, fleet pull, WAF, LLM and A2A gateways, FastCGI, traffic insights.

Internal to rust-web-server, released with it at the same version: use these through the rust_web_server paths, which stay stable; this crate’s own layout may change in any release. See spec/WORKSPACE_SPLIT.md.

Modules§

a2a
A2A (Agent2Agent) 1.0 server, JSON-RPC binding (18.17.0, #65): other agents discover this one by its Agent Card at /.well-known/agent-card.json and talk to it with SendMessage, GetTask, ListTasks, CancelTask.
adminNon-WebAssembly
The admin API (18.10.0, #29): change and inspect a running server on a listener of its own, never on the public routes.
canaryNon-WebAssembly
Weighted canary / A-B traffic splitting middleware.
clusterNon-WebAssembly
Runtime state shared across replicas through Redis (18.22.0). Runtime state shared across replicas (18.22.0, #76).
config_check
rws --check: validate rws.config.toml without starting the server — the counterpart of nginx -t / caddy validate.
dev_mcpNon-WebAssembly
app.dev_mcp(): an MCP endpoint for a coding agent (18.28.0). app.dev_mcp(): an MCP endpoint that lets a coding agent look inside the application it is working on — its routes and the middleware around them, its effective configuration (secrets hidden), its layout and rws.app.toml (crate::app_manifest), the last requests and errors, and with a model-* feature its models, database schema and migrations. Since 18.28.0 (roadmap #85, #87).
fastcgiNon-WebAssembly
FastCGI client: PHP through php-fpm (18.21.0). FastCGI (18.21.0, #72): PHP through php-fpm, and any other FastCGI responder, without FrankenPHP or a second web server.
fleethttp2 and non-WebAssembly
Fleet config pull: signed configs from HTTPS, S3 or git (18.23.0). Fleet config pull (18.23.0, #80): many instances, one source of truth.
ingressNon-WebAssembly
Kubernetes Ingress watcher and router.
llmNon-WebAssembly
An LLM proxy (18.9.0, #41): one endpoint in front of OpenAI-compatible and Anthropic providers that counts tokens, enforces budgets and fails over between providers.
proxyNon-WebAssembly
Reverse proxy middleware with round-robin load balancing.
proxy_configNon-WebAssembly
Config-driven proxy application.
tcp_proxyNon-WebAssembly
Layer-4 TCP proxy.
traffic
Traffic insights (18.15.0): who visits — people, AI agents, bots — worked out by rws from each request, for the admin UI’s Traffic page.
udp_proxyNon-WebAssembly
Layer-4 UDP proxy.
waf
Web application firewall: rws’s own rules (18.22.0). Web application firewall (18.22.0, #77): rws’s own rules, no rule language to learn and no external engine.
ws_proxyNon-WebAssembly
WebSocket reverse proxy.