intermediate

Health checks

Разделяйте liveness, readiness, startup и dependency checks, чтобы orchestrators правильно routed traffic и restarted services.

Orchestrators используют health endpoints для routing traffic и restart unhealthy instances. Liveness: «перезапустить процесс?» Readiness: «принимать traffic?» Startup probes защищают slow-booting apps. Dependency checks — в readiness, не liveness, чтобы избежать restart loops.

На интервью: liveness vs readiness для сервиса, кратко не достигающего Kafka.

Типовые ошибки: downstream DB в liveness; readiness всегда true; тяжёлая работа в health endpoint.

Компромисс — гибкость против сложности: знайте, когда достаточно более простого пути.

Чеклист:

  • Раздельные liveness, readiness и startup probes.
  • Liveness дешёвый и про process.
  • Убирайте из load balancer при not ready.
  • Version health responses для debugging.