Nginx - Begrænsende anmodninger

Indholdsfortegnelse
På trods af Nginx det er begivenhedsorienteret og at dette giver os mulighed for at optimere ressourcer til at give hurtige svar og med mindre ressourceforbrug, er der tidspunkter, hvor det ikke er nok, og på samme måde begynder tjenesten at mangle.
Når dette sker, begynder internettet at have mange fejl af "Tiden er gået", det vil sige, der går lang tid fra anmodningen til Nginx kan tage sig af det, er den umiddelbare og anbefalede løsning at forbedre serverhardwaren, enten mere RAM eller en bedre processor eller begge dele, men dette er ikke altid muligt.
Begrænse
Den grænse, vi kan etablere, er at reducere mængden af ​​hukommelse, der forbruges af anmodninger og reducere deres frekvens, vi opnår dette ved at oprette en zone ved hjælp af en session for at kunne vide, hvem vi vil begrænse i deres anmodninger mod vores service Nginx.
Lad os i det følgende billede se et eksempel på, hvordan vi kan etablere disse zoner og grænser:

Hvordan virker grænsen?
Ovenstående eksempel er meget let at forstå, først i vores HTTP -blok vi har etableret zonen, vi gør dette med limit_req_zone, som fortæller os, hvilken variabel vi skal etablere for at bygge den, i dette tilfælde ekstern IP -adresse binær, det vil sige af klienten, det er det, der fungerer som identifikatorværdien eller -nøglen til sessionen, derefter med zone vi fastlægger det rum, som vi vil tildele zonen og endelig frekvensen af ​​accepterede anmodninger, i dette tilfælde vil det være en anmodning pr. sekund.
Nu i vores serverblok med limit_req vi fortæller ham, at han vil tage den zone, vi etablerede i HTTP -blok, dette giver os mulighed for at etablere et "uendeligt" antal zoner, her er grænsen mængden af ​​hukommelse, som udstyret, hvor vi er vært for tjenesten, har Nginx. Når anmodningsgrænsen er nået, vil brugerne se en fejl 503 service ikke tilgængelig, hvilket forhindrer andre brugeres oplevelse i at lide af dårlig ydeevne.
SessionsnøgleVi kan bruge praktisk talt enhver værdi som en sessionsnøgle, men det anbefales, at der bruges en lille værdi, der kan rummes i hukommelsen med alle de ekstra anmodninger, således at ved at multiplicere det samlede antal indgående forbindelser med værdien af ​​størrelsen på alle sessionerne være mindre end størrelsen på sessionscachenHvis dette ikke sker, vil vi ikke være i stand til at bruge det maksimale antal af de zoner, vi etablerer, og dermed ødelægge formålet med det, vi bygger med grænserne for anmodningerne.
Med dette afslutter vi denne vejledning, som vi ser på trods af, at tanken altid er at forbedre ydelsen af ​​vores service, Nginx Det giver os også værktøjer, som vi kan bruge, når vores hardware ikke giver mere, hvad vi har forklaret her burde være en sidste udvej, men der er tilfælde som delte servere, at vi ikke kan foretage ændringer, og at vi skal appellere til dette løsningstype.Kan du lide og hjælpe denne vejledning?Du kan belønne forfatteren ved at trykke på denne knap for at give ham et positivt punkt
wave wave wave wave wave