Status routes

TAS backend implementuje mechanismus pro bezpečné vypínání a poskytuje dedikované HTTP endpointy pro monitoring zdraví aplikace. Díky tomu může orchestrátor (Kubernetes, Docker Swarm) přesně řídit tok provozu — zastavit příjem requestů dříve, než začne samotné vypínání, a restartovat kontejner pouze tehdy, když aplikace skutečně přestane odpovídat.

Status Routes

Backend vystavuje dva HTTP endpointy pro monitoring, které nevyžadují autentizaci a jsou dostupné vždy — i v průběhu startu nebo shutdownu.

GET /status/liveness

Odpovídá, zda je aplikace naživu — tedy nezaseknutá a schopná zpracovávat požadavky.

Stav

HTTP status

Tělo odpovědi

Aplikace běží normálně

200

{"status": "OK"}

Aplikace se spouští nebo vypíná

503

{"status": "UNAVAILABLE"}

  • globalThis.applicationStatus.liveness = true — nastaveno po úspěšném startu (po inicializaci bootstrapu a DI containeru)
  • globalThis.applicationStatus.liveness = false — nastaveno na konci graceful shutdown (po uzavření HTTP serveru a DB spojení)

GET /status/readiness

Odpovídá, zda je aplikace připravena přijímat provozní požadavky. Loadbalancer nebo orchestrátor na základě tohoto endpointu rozhoduje, zda může posílat traffic.

Stav

HTTP status

Tělo odpovědi

Aplikace je připravena

200

{"status": "OK"}

Aplikace se spouští nebo vypíná

503

{"status": "UNAVAILABLE"}

  • globalThis.applicationStatus.readiness = true — nastaveno po úspěšném dokončení startu
  • globalThis.applicationStatus.readiness = false — nastaveno okamžitě při zahájení graceful shutdown (stop traffic ASAP)

Frantisek Brych Updated by Frantisek Brych

Prerekvizity serveru

Contact

Team assistant (opens in a new tab)

Powered by HelpDocs (opens in a new tab)