Tuning
Configuration is read once at start. A reload rereads it; a restart is needed only when the listening socket changes.
systemctl reload example.service
Settings worth changing
| Key | Default | Note |
|---|---|---|
workers | auto | One per core; pin it on shared hosts |
timeout | 30s | Idle connections only |
log_level | warn | Raise only while tracing a problem |
max_body | 1m | Larger uploads need the proxy changed too |
Reload safety
A reload keeps existing connections until they finish. If the new configuration fails validation the old one stays in effect and the reload is reported as failed, so a broken edit never takes the service down on its own.