Nginx - Ограничаващи заявки

Съдържание
Въпреки Nginx то е ориентиран към събития и че това ни позволява да оптимизираме ресурсите, за да дадем бързи отговори и с по -малко потребление на ресурси, има моменти, когато това не е достатъчно и по същия начин услугата започва да не достига.
Когато това се случи, мрежата започва да има много грешки „Време за изчакване“, тоест, много време минава от заявката до Nginx може да се погрижи за това, незабавното и препоръчано решение е да се подобри хардуерът на сървъра, или повече RAM или по -добър процесор или и двете, но това не винаги е възможно.
Ограничение
Ограничението, което можем да установим, е да намалим количеството памет, което се консумира от заявките и да намалим тяхната честота, постигаме това чрез създаване на зона, използваща сесия, за да можем да знаем кого ще ограничим в техните искания срещу нашата услуга Nginx.
Нека видим на следващото изображение пример за това как можем да установим тези зони и граници:

Как работи лимитът?
Горният пример е много лесен за разбиране, първо в нашия HTTP блок ние сме установили зоната, правим това с limit_req_zone, което ни казва коя е променливата, която ще установим, за да я изградим, в случая the двоичен двоен IP адрес, тоест на клиента, това е, което ще служи като стойност на идентификатора или ключ на сесията, след това с зона ние установяваме пространството, което ще присвоим на споменатата зона и накрая честотата на приетите заявки, в този случай това ще бъде една заявка в секунда.
Сега в нашия сървърния блок с limit_req ние му казваме, че ще вземе зоната, която сме установили в HTTP блок, това ни позволява да установим "безкраен" брой зони, тук ограничението е количеството памет, с което разполага оборудването, където хостваме услугата Nginx. Когато се достигне ограничението на заявката, потребителите ще видят a грешка 503 услугата не е налична, като по този начин предотвратява опита на други потребители да страдат от лошо представяне.
Сесиен ключМожем да използваме практически всяка стойност като ключ за сесия, но се препоръчва да се използва малка стойност, която може да се побере в паметта с всички допълнителни заявки, така че чрез умножаване на общата сума на входящите връзки по стойността на размера на всички сесии да бъдат по -малък от размера на кеша на сесиятаАко това не се случи, няма да можем да използваме максимума от зоните, които създаваме, като по този начин унищожаваме целта на това, което изграждаме с границите на заявките.
С това приключваме този урок, както виждаме въпреки факта, че идеята винаги е да подобрим работата на нашата услуга, Nginx Той също така ни предлага инструменти, които можем да използваме, когато хардуерът ни не дава повече, това, което обяснихме тук, трябва да бъде последна мярка, но има случаи като споделени сървъри, в които не можем да правим никакви промени и че трябва да обжалваме това вид разтвор.Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка
wave wave wave wave wave