Supplement · Nginx
Production readiness và learning gates
Definition of Done
Architecture và correctness
- Giải thích master/worker/event loop và capacity theo FD.
- Vẽ request path qua server/location/phases/upstream.
- Có test matrix cho location, rewrite, root/alias và URI normalization.
- Lưu config render bằng
nginx -T, version/build bằngnginx -V.
Resilience và capacity
- Timeout budget có owner và bound retries/tries/time.
- Unsafe methods không retry nếu thiếu idempotency contract.
- Buffer/temp disk/slow-client behavior đã load test.
- Connection, FD, listen queue, upstream và downstream limits tương thích.
- Cache key/isolation/stale/invalidations có test.
Security
- Forwarded IP/scheme chỉ trust proxy CIDR được kiểm soát.
- Unknown Host/SNI có default-deny hoặc policy rõ.
- TLS protocol, chain, SAN, expiry và rotation được probe.
- Rate/connection limit dùng key phù hợp NAT, IPv6 và tenant.
- Giới hạn header/body/method; không expose file nội bộ hoặc management endpoint.
- Worker chạy least privilege, module/version có patch process.
Observability và operations
- Log request ID, total/upstream timings, attempts, cache status; redact secrets.
- Dashboard/alert bao phủ rate, errors, latency, saturation và temp disk.
- Runbook validate → reload → synthetic verify → monitor drain → rollback.
- Log rotation, certificate rotation và long-lived connection đã diễn tập.
- Mỗi lab có raw evidence; không đánh dấu executed nếu chưa chạy.
Tự đánh giá
| Mức | Evidence |
|---|---|
| Foundation | Giải thích đúng config/request path và hoàn thành Lab 1–2. |
| Production | Hoàn thành Lab 3–7, đọc log/timing và sửa failure có kiểm chứng. |
| Senior | Thiết kế timeout/retry/cache/trust boundary, chạy reload drill và bảo vệ trade-off bằng SLO/evidence. |