Shablloni PHP-FPM i Personalizuar i HestiaCP: Sekretet e Optimizimit të Performancës PHP 8.5

HestiaCP Përshtatja e shablloneve PHP-FPM në praktikë: Duke marrë PHP 8.5 si shembull

Sapo trafiku i serverit rritet ndjeshëm, shablloni i parazgjedhur PHP-FPM, ashtu si një firewall letre, mbingarkohet menjëherë, duke shkaktuar rënien e performancës.

Prandaj po të them:Shabllonet e personalizuara nuk janë një opsion, por një çështje jete a vdekjeje.

Pse të përdorni një shabllon të personalizuar?

Në HestiaCP, shablloni i parazgjedhur do të mbishkruhet me përditësimet e sistemit.

Kjo do të thotë që parametrat që keni rregulluar me kujdes mund të zhduken menjëherë pas një përditësimi.

Sipas dokumentacionit zyrtar të PHP-së,pm.max_children Këto parametra përcaktojnë drejtpërdrejt aftësitë e njëkohshmërisë; pasi të rivendoset, performanca e faqes së internetit do të bjerë në mënyrë drastike.

Prandaj, kopjoni shabllonin e parazgjedhur dhe krijoni një të ri. custom-PHP8_5.tplE vetmja mënyrë për të siguruar stabilitetin është ta zgjidhni atë në panel.

Shablloni PHP-FPM i Personalizuar i HestiaCP: Sekretet e Optimizimit të Performancës PHP 8.5

Logjika thelbësore e menaxhimit të procesit

Avantazhet e modalitetit dinamik

pm = dynamic Është zgjedhja e parë për skenarë me paralelizëm të lartë.

Ai rregullon automatikisht numrin e proceseve bazuar në ngarkesë për të shmangur shpërdorimin e burimeve.

Në një 12 GB RAM, CPU me 8 bërthama Në servera, modaliteti dinamik lejon që sistemi të mbetet i qëndrueshëm gjatë periudhave të pikut, në vend që të ngecë në një vlerë fikse.

Rregullimi i imët i kontrollit të numrit të proceseve

Numri maksimal i proceseve fëmijë

pm.max_children = 300

Ky numër nuk u zgjodh rastësisht.

Sipas raportit të testimit të performancës Nginx + PHP-FPM (nginx.com në Bing) Sipas të dhënave, një proces i vetëm PHP konsumon afërsisht 30–40 MB memorie.

Në një mjedis memorieje prej 12 GB, 300 procese do të zënë afërsisht 9 GB, duke lënë hapësirë ​​të mjaftueshme për sistemin dhe bazën e të dhënave, gjë që është tamam e duhura.

Numri i proceseve të nisura

pm.start_servers = 32

Kjo siguron që faqja e internetit të ketë procese të mjaftueshme për të trajtuar kërkesat kur ajo ndizet, duke parandaluar vonesën gjatë ndezjeve të ftohta.

Kontroll i procesit në gjendje të papërdorshme

  • pm.min_spare_servers = 16
  • pm.max_spare_servers = 64

Këta dy parametra veprojnë si "portierë", duke siguruar që të ketë mjaftueshëm procese rezervë pa humbur burime.

Kërkoni kontroll dhe stabilitet

Numri maksimal i kërkesave

pm.max_requests = 1000

Çdo proces rinis automatikisht pas trajtimit të 1000 kërkesave për të shmangur rrjedhjet e memories.

Kjo është praktika zyrtare e rekomanduar në PHP, e cila mund të parandalojë në mënyrë efektive degradimin e performancës të shkaktuar nga funksionimi afatgjatë.

Kërkesa skadoi

request_terminate_timeout = 60s

Kërkesat që kalojnë 60 sekonda do të ndërpriten me forcë.

Kjo është si të shtosh një shtresë sigurimi në sistem për të parandaluar që një bllokim të rrëzojë të gjithë serverin.

Zbatimi praktik i monitorimit të performancës

Regjistrim i ngadaltë i regjistrit

slowlog = /var/log/php8.5-fpm-%domain%.slow.log

Çdo kërkesë që zgjat më shumë se 5 sekonda do të regjistrohet.

Kjo ju lejon të jeni të saktëPozicionimiPërqendrohuni te pengesat në performancë, jo te hamendësimet e verbëra.

Kohëzgjatja e ngadaltë e kërkesës

request_slowlog_timeout = 5s

Logjet e ngadalta aktivizohen nëse koha tejkalon 5 sekonda, duke ju ndihmuar të identifikoni shpejt problemet.

Nevoja për siguri dhe izolim

Kufizimet e drejtorisë

php_admin_value[open_basedir]

Ai i kufizon skriptet PHP të hyjnë vetëm në drejtori të caktuara, duke parandaluar qasjen ndërfaqësore.

Kjo është veçanërisht e rëndësishme në një mjedis me shumë faqe, për të parandaluar që një dobësi në një faqe të ndikojë në faqet e tjera.

Skedarët e përkohshëm dhe izolimi i sesionit

php_admin_value[session.save_path] kundër upload_tmp_dir

Ruani skedarët dhe seancat e përkohshme në drejtorinë e përdoruesit për të përmirësuar sigurinë.

Kjo është si të instalosh një kasafortë të pavarur për secilën vendndodhje, në mënyrë që ato të mos ndërhyjnë me njëra-tjetrën.

Si të aplikoni një shabllon të personalizuar

Kopjo shabllonin e parazgjedhur

cp /usr/local/hestia/data/templates/web/php-fpm/default.tpl \
   /usr/local/hestia/data/templates/web/php-fpm/custom-PHP8_5.tpl

Modifiko parametrat e konfigurimit

Përshtateni sipas burimeve dhe nevojave të serverit. pm.max_children,request_terminate_timeout 等.

Zgjidhni një shabllon në panelin HestiaCP.

Paneli i hyrjes → Ueb → Modifiko domenin → Shablloni PHP-FPM → Zgjidh custom-PHP8_5.tpl

Ruaj dhe zbato

Sistemi do të ngarkojë menjëherë konfigurimin e ri të shabllonit.

Rastet e botës reale në praktikë

Isha dikur në një Trafiku maksimal prej 5000 përdoruesish të njëkohshëm Është testuar në server.

Kur përdorni shabllonin e parazgjedhur, koha e përgjigjes rritet në 3.2 sekonda.

kaloni në custom-PHP8_5.tpl Pas kësaj, koha e reagimit u stabilizua në 0.8 sekonda.

Kjo është fuqia e shablloneve të personalizuara.

Përfundim: Pikëpamja ime

Në botën e optimizimit të serverëve, shabllonet janë rendi themelor.

Nëse ende mbështeteni te shablloni parazgjedhur, është si t’ia dorëzoni një makinë luksoze një shoferi fillestar - makina mund të rrëzohet lehtësisht.

Ekspertët e vërtetë dinë si të përdorin shabllone të personalizuara për të siguruar stabilitetin dhe si të akordojnë parametrat për të çliruar performancën.

Motoja ime është: Konfigurimi nuk është një detaj, por një strategji që përcakton jetën ose vdekjen.

Pra, le të ndërmarrim veprime.

Kopjoni shabllonin, modifikoni parametrat dhe zgjidhni... custom-PHP8_5.tpl.

Mbajeni serverin tuaj të qëndrueshëm edhe në kushte të njëkohshme të lartë.

发表 评论

Adresa juaj e emailit nuk do të publikohet. Përdoren fushat e kërkuara * Etiketa

Scroll to Top