Erinevused ja optimeerimistehnikad PHP-FPM konfiguratsioonifailis /etc/php/8.3/fpm/pool.d/

Kas kõik on korras, kui server töötab? Tegelikult on PHP-FPM maailmas konfiguratsioonifail see, mis määrab, kas sait saab stabiilselt, turvaliselt ja tõhusalt töötada.

Milline on PHP-FPM-i protsesside kogumi konfiguratsioon?

PHP-FPM (FastCGI Process Manager) on PHP protsesside haldur, mis kasutab "basseinide" kontseptsiooni erinevate veebisaitide või rakenduste PHP protsesside haldamiseks.

Iga .conf Fail on kogumi definitsioon, mis määrab peamised parameetrid, näiteks kasutaja, kellel protsess töötab, port või sokkel, mida see kuulab, logi tee ja protsesside arv.

Teisisõnu, need failid on nagu teie serveri "kloonid", mis võimaldavad erinevatel saitidel töötada iseseisvalt ilma üksteist segamata.

Erinevused ja optimeerimistehnikad PHP-FPM konfiguratsioonifailis /etc/php/8.3/fpm/pool.d/

www.conf: Vaikimisi protsesside kogum

Pärast PHP-FPM-i installimist genereerib süsteem automaatselt www.conf dokument.

Selle ülesanne on pakkuda vaikimisi basseini, mis töötab kohe karbist võttes, tavaliselt töötades... www-data Kasutaja.

See bassein sobib ühe saidiga keskkondadesse, seda on lihtne seadistada ja enamik parameetreid on üldised väärtused, näiteks:

  • user = www-data
  • group = www-data
  • listen = /run/php/php8.3-fpm.sock
  • pm.max_children = 5

Kui tegutsed ainult ühel saidil, siis sellest piisab.

etufo.org.conf: Kohandatud saidigrupp

Kui teil on mitu saiti, peate iga saidi jaoks looma eraldi basseini.

nagu etufo.org.confSee on spetsiaalselt domeeninimede jaoks. etufo. Org Eksklusiivne konfiguratsioon.

Levinud praktika on:

  • Näiteks erinevate kasutajate ja rühmade määramine user = etufo,group = etufo
  • Näiteks eraldi kuulamispordi või -pesa seadistamine listen = /run/php/etufo.sock
  • Reguleerige protsesside arvu, et tagada saidi stabiilsus suure samaaegsuse korral.
  • Sõltumatud logifailid hõlbustavad tõrkeotsingut.

Selle lähenemisviisi eeliseks on turvalisuse isoleerimine: isegi kui ühte saiti rünnatakse, ei mõjuta see teisi saite.

dummy.conf: Näidis- või kohatäitefail

dummy.conf Tavaliselt on need süsteemi pakutavad mallid või näited.

See ei ole tegelikult lubatud, kui te seda käsitsi ei muuda ja ei luba.

Selle eesmärk on anda teile viide ja näidata, kuidas kirjutada uut basseini konfiguratsiooni.

Seega on see pigem "kasutusjuhend" kui tegelik töökonfiguratsioon.

Miks kasutada mitut basseinifaili?

  • 安全 性Kattuvate õiguste vältimiseks peaksid erinevad saidid olema erinevate kasutajate hallatavad.
  • 性能优化Protsesside arvu saab iga basseini jaoks eraldi määrata ja vastavalt liiklusnõudlusele reguleerida.
  • IsolatsioonLogid, veaväljund ja kuulamispordid on kõik eraldatud, mis muudab tõrkeotsingu lihtsamaks.

Näiteks, kui www.conf See varises kokku.etufo.org.conf See saab ikkagi normaalselt töötada ja ei riku kogu serverit.

Praktilised rakendusstsenaariumid

  • Ühe saidiga serverAinult kasutamiseks www.conf Sellest piisab.
  • Mitme saidiga serverLoo iga saidi jaoks üks .conf Failid, näiteks etufo.org.conf.
  • mannekeen.confAinult viitamiseks, ei ole soovitatav.

Konfiguratsiooni võrdluse näide

www.conf (vaikimisi bassein)

[www]
user = www-data
group = www-data
listen = /run/php/php8.3-fpm.sock
pm = dynamic
pm.max_children = 5

etufo.org.conf (kohandatud rühm)

[etufo.org]
user = etufo
group = etufo
listen = /run/php/etufo.sock
pm = dynamic
pm.max_children = 20
access.log = /var/log/php-fpm/etufo.access.log

Märkad, et erinevus seisneb kasutajas, kuulamisaadressis ja protsesside arvus.

PHP-FPM protsesside kogumi parameetrite kohandamine

Kui konfiguratsioon kasutab dünaamilineSee on meetod mõnede tööprotsesside eelkäivitamiseks ja nende dünaamiliseks kohandamiseks vastavalt päringute mahule, mis suudab kiiremini reageerida, kui päringute maht järsult suureneb.

Teatud liiklusmahuga veebisaitide puhul on soovitatav kasutada pm = dynamicSest see suudab säilitada teatud hulga jõudeolekus protsesse ja vältida 500 viga suure samaaegsuse korral.

Soovitatav on seda kasutada ainult siis, kui juurdepääsumaht on äärmiselt väike ja mäluressursid on piiratud. pm = ondemand Ressursside säästmiseks.

Soovitatav on see dünaamiliseks muuta ja optimeerida. pm.max_children Ja muud parameetrid:

pm = dynamic
pm.max_children = 16  ; 根据服务器资源调整,建议值:CPU 核心数 × 2
pm.start_servers = 4   ; 初始进程数,建议设为 max_children × 25%
pm.min_spare_servers = 2  ; 最小空闲进程数
pm.max_spare_servers = 7  ; 最大空闲进程数
pm.max_requests = 3000    ; 每个子进程处理完 3000 个请求后自动重启
pm.process_idle_timeout = 10s  ; 空闲进程 10s 后自动退出

See konfiguratsioon tagab jõudluse, vältides samal ajal ressursside raiskamist.

Täpsemate konfigureerimisjuhiste saamiseks vaadake järgmist õpetust ▼

PHP ametliku dokumentatsiooni kohaselt:

„Iga basseini saab konfigureerida eraldi, võimaldades rakenduse kohta erinevaid kasutajaid, piiranguid ja sätteid.“

See väide toob selgelt välja mitme basseini konfiguratsiooni olulisuse: iseseisvus, paindlikkus ja juhitavus.

Kokkuvõte: minu seisukoht

Serveri konfiguratsioon on nagu orkestris dirigent, kes määrab, kuidas iga instrumenti tuleks mängida.

www.conf See on vaikimisi dirigent, mis sobib sooloesinemisteks;etufo.org.conf See on dirigent, kes on spetsiaalselt loodud konkreetse lava jaoks; ja dummy.conf See on nootide mustand, mis tuletab meelde, kuidas uusi meloodiaid kirjutada.

Infoturbele ja jõudluse optimeerimisele keskendunud ajastul on nende konfiguratsioonifailide õige kasutamise tundmine serveri päästerõnga haldamise võtmetähtsusega.

Konfiguratsioon ei ole lihtsalt tühine tekst; see on serveri hing.

Kui te tegutseteWordPressMitme saidiga rakenduste puhul soovitame tungivalt need basseinifailid, eriti protsesside basseini parameetrite sätted, kohe üle kontrollida ja optimeerida, et muuta teie server tõeliselt töökindlaks.

发表 评论

您的邮箱地址不会被公开. Kasutatakse kohustuslikke välju * Silt

Artiklite kataloog
Leidke Top