Utgitt er hovedversjonen av nginx 1.29.6, der utviklingen av nye funksjoner fortsetter. I den parallelt støttede stabile versjonen 1.28.x gjøres det bare endringer knyttet til å rette alvorlige feil og sårbarheter. På sikt vil den stabile versjonen 1.30 bli dannet basert på hovedversjonen 1.29.x. Prosjektkoden er skrevet i C og distribueres under BSD-lisens.
Den nye utgivelsen har lagt til muligheten for å binde kundesessioner til de samme serverne i en gruppe. Tre metoder er tilgjengelige: «cookie» - overføring av data om det valgte serveren via den angitte Cookien; «route» - den proxierte serveren tildeler en rute til kunden ved mottak av den første forespørselen; «learn» - nginx analyserer svarene fra upstream-serveren og husker de opprettede sessionene av serveren. For å konfigurere bindingen, er direktivet «sticky» lagt til blokk «upstream» i «http»-modulen, og i direktivet «server» er parameterne «route» og «drain» lagt til. # Via Cookie srv_id tildeles server «a» eller «b». upstream backend { server backend1.example.com route=a; server backend2.example.com route=b; sticky cookie srv_id expires=1h domain=.example.com path=\/; } # Ruten tas fra Cookien «JSESSIONID» eller, hvis den ikke er satt, fra parameteren jsessionid i URI. map $cookie_jsessionid $route_cookie { ~.+\.(?P\w+)$ $route; } map $request_uri $route_uri { ~jsessionid=.+\.(?P\w+)$ $route; } upstream backend { server backend1.example.com route=a; server backend2.example.com route=b; sticky route $route_cookie $route_uri; } # upstream-serveren oppretter en session ved å sette Cookie «EXAMPLECOOKIE» på første svar. # Alle andre forespørselene med denne Cookien sendes til én server. upstream backend { server backend1.example.com:8080; server backend2.example.com:8081; sticky learn create=$upstream_cookie_examplecookie lookup=$cookie_examplecookie zone=client_sessions:1m; }
Kilde: opennet.ru
