Apăsând tasta F5 din fereastra browserului și ținându-l timp de câteva minute, puteți aranja un atac ușor DDOS pe site. Tasta funcțională F5 indică browserului să reîncarce pagina.
Dacă o apăsați și o țineți apăsată timp îndelungat, computerul încearcă să o încarce (de multe ori) de mai multe ori, creând astfel o sarcină pe server sub forma mai multor solicitări. Și din moment ce capacitățile unui server nu sunt nelimitate, atunci dintr-o suprapunere de "sentimente" de cereri, se poate opri de lucru.
Serverul va depinde de caracteristicile și setările tehnice ale serverului, ale site-ului și ale CMS-ului utilizat. În acest articol voi descrie modul de configurare corectă a serverului web Apache2, astfel încât chiar și cel mai modest server VDS cu memorie de 512 MB să facă față unui număr mare de cereri, inclusiv celor cauzate de tasta F5.
Pregătiți pentru a configura serverul
Determinați modul MPM care utilizează Apache2. Pentru CentOS, se arată astfel:
Excelent, avem Server MPM: Prefork
Configurarea Apache, care nu ar avea probleme cu memoria zhore
O scurtă descriere a parametrilor modulului Apache MPM Prefork
StartServers - numărul de procese copil create atunci când serverul este pornit.
MinSpareServers este numărul minim de procese de server de tip copil (neutilizate) care așteaptă posibile solicitări.
MaxSpareServers - numărul maxim de procese de rezervă care așteaptă cereri potențiale. Dacă acest număr este depășit, procesele în exces vor fi ucise.
MaxClients - cel mai important parametru al modulului prefork MPM, stabilește limita superioară a numărului de procese active simultan. Este vorba despre consumul de memorie. Valoarea sa suprascrie valoarea parametrilor anteriori.
ServerLimit este, de obicei, MaxClients.
MaxRequestsPerChild - cât de des serverul procesează procesele, ucigând cele vechi și pornind (pornind) altele noi. Este util pentru scurgerea de memorie a Apache și a bibliotecilor sale.
KeepAlive - oferă sesiuni HTTP de lungă durată, permițându-vă să trimiteți mai multe solicitări prin aceeași conexiune. Util pentru a porni dacă paginile conțin multe imagini. Dar dacă utilizați NGINX ca server proxy, lăsați valoarea OFF.
Vedeți și: Soluția problemei Eșuată: initscripts.x86_64 0: 9.49.24-1.el7 pe CentOS 7
Parametrul cel mai important este MaxClients. doar vorbește despre numărul de procese simultane ale serverului web Apache.
Cum se găsește valoarea MaxClients
Determinarea valorii sale nu este dificilă. Calculul valorii pentru un server cu o dimensiune RAM de 512 MB. Decidem că dăm 50% din RAM pentru resursele Apache, adică 256 MB în cazul nostru.
Determinați câte amintiri va desființa un proces:
Obținem următoarele valori:
Se pare că, în medie, un proces Apache consumă 21 MB. În consecință, în volumul alocat de 256 MB putem executa 12 procese.
Să rezolvăm fișierul de configurare pentru noua valoare:
Restul parametrilor corectați pe baza recomandărilor de pe Internet pentru un server cu memorie RAM de 512 MB.
După efectuarea modificărilor în fișierul de configurare, nu uitați să reîncărcați aplicația Appache:
mulțumesc
La scrierea articolului, au fost folosite următoarele surse: