-
Notifications
You must be signed in to change notification settings - Fork 0
Features and Build Profiles
Jul.IA groups a broad gateway surface into a core binary plus optional build-time capabilities.
- HTTP serving, routing, redirects, static files, and reverse proxying.
- Backend pools, load balancing, health checks, and service discovery.
- TLS, mutual TLS, authentication, policy, limits, and request protection.
- Response caching and content compression.
- FastCGI, uWSGI, native gRPC, and gRPC-JSON gateway behavior.
- Metrics, logs, traces, health endpoints, and an optional operations Console.
- Optional HTTP/3, L4 stream proxying, WAF, and WASM extensions.
This is an orientation list, not a maturity claim. Check the feature status matrix and known limitations before choosing a capability for production.
- Lean keeps the default binary focused on core functionality.
- Full compiles the supported optional integrations into one binary.
A configuration that activates a capability missing from the binary is rejected rather than ignored.
Optional features use Go build tags. Examples include console, ACME, gRPC, HTTP/3, OpenTelemetry, WAF, WASM plugins, L4 streams, alternate compression codecs, and external discovery providers.
Do not maintain a copied tag matrix in automation or this wiki. Use the current build-tags quick reference and the release artifacts as the authority.
Choose full when operational simplicity matters more than minimizing the binary surface. Choose lean when you deliberately want fewer compiled capabilities and can control the configuration accordingly.
Before deployment:
jul version
jul check -config server.tomlThe first identifies the build; the second verifies that the selected binary can construct the configured runtime.
The documentation index links to focused guides for authentication, cache, Console, gRPC, health, mTLS, plugins, secrets, discovery, stream proxying, TLS/ACME, WAF, and other subsystems.