Maqolalar katalogi
- 1 PHP-FPM uchun jarayonlar havzasi konfiguratsiyasi qanday?
- 2 http://www.conf:默认的进程池
- 3 etufo.org.conf: Maxsus sayt puli
- 4 dummy.conf: Misol yoki joy egallovchi fayl
- 5 Nima uchun bir nechta hovuz fayllaridan foydalanish kerak?
- 6 Haqiqiy dunyodagi dastur stsenariylari
- 7 Konfiguratsiyani taqqoslash misoli
- 8 PHP-FPM jarayon pulining parametrlarini sozlash
- 9 Xulosa: Mening nuqtai nazarim
Server ishga tushgandan keyin hammasi joyidami? Aslida, PHP-FPM dunyosida konfiguratsiya fayli saytning barqaror, xavfsiz va samarali ishlashini belgilovchi haqiqiy boshliqdir.
PHP-FPM uchun jarayonlar havzasi konfiguratsiyasi qanday?
PHP-FPM (FastCGI Process Manager) - bu turli veb-saytlar yoki ilovalar uchun PHP jarayonlarini boshqarish uchun "hovuzlar" tushunchasidan foydalanadigan PHP uchun jarayon menejeri.
Har bir .conf Fayl - bu jarayon ishlaydigan foydalanuvchi, u tinglaydigan port yoki soket, jurnal yo'li va jarayonlar soni kabi asosiy parametrlarni belgilaydigan pul ta'rifi.
Boshqacha qilib aytganda, bu fayllar serveringiz uchun "klonlar"ga o'xshaydi, bu turli saytlarga bir-biriga xalaqit bermasdan mustaqil ravishda ishlashga imkon beradi.

http://www.conf:默认的进程池
PHP-FPM ni o'rnatgandan so'ng, tizim avtomatik ravishda a ni yaratadi www.conf hujjat.
Uning vazifasi odatda ishlaydigan, qutidan tashqarida ishlaydigan standart hovuzni taqdim etishdir... www-data Foydalanuvchi.
Bu hovuz bitta saytli muhitlar uchun mos keladi, sozlash oson va parametrlarning aksariyati umumiy qiymatlardir, masalan:
user = www-datagroup = www-datalisten = /run/php/php8.3-fpm.sockpm.max_children = 5
Agar siz faqat bitta saytda ishlayotgan bo'lsangiz, bu yetarli.
etUFO.org.conf: Maxsus sayt puli
Agar sizda bir nechta saytlar bo'lsa, har bir sayt uchun alohida hovuz yaratishingiz kerak.
kabi etufo.org.confBu, xususan, domen nomlari uchun. etUFO.org Eksklyuziv konfiguratsiya.
Umumiy amaliyot:
- Masalan, turli foydalanuvchilar va guruhlarni ko'rsating
user = etufo,group = etufo - Masalan, alohida tinglash portini yoki soketini sozlang
listen = /run/php/etufo.sock - Yuqori parallellik sharoitida sayt barqarorligini ta'minlash uchun jarayonlar sonini sozlang.
- Mustaqil jurnal fayllari muammolarni bartaraf etishni osonlashtiradi.
Ushbu yondashuvning afzalligi xavfsizlik izolyatsiyasida: hatto bitta saytga hujum qilinsa ham, boshqa saytlarga ta'sir qilmaydi.
dummy.conf: Misol yoki joy egallovchi fayl
dummy.conf Bu odatda tizim tomonidan taqdim etilgan shablonlar yoki misollardir.
Agar uni qo'lda o'zgartirib, yoqmasangiz, u aslida yoqilmaydi.
Uning maqsadi sizga ma'lumotnoma berish va yangi hovuz konfiguratsiyasini qanday yozishni ko'rsatishdir.
Shuning uchun, bu haqiqiy ishlash konfiguratsiyasidan ko'ra ko'proq "qo'llanma" ga o'xshaydi.
Nima uchun bir nechta hovuz fayllaridan foydalanish kerak?
- Ānquán xìngRuxsatnomalarning bir-birining ustiga chiqishiga yo'l qo'ymaslik uchun turli saytlar turli foydalanuvchilar tomonidan boshqarilishi kerak.
- língínínJarayonlar soni har bir hovuz uchun alohida o'rnatilishi va trafik talabiga muvofiq sozlanishi mumkin.
- IzolyatsiyaJurnallar, xato chiqishi va tinglash portlari barchasi ajratilgan, bu esa muammolarni bartaraf etishni osonlashtiradi.
Masalan, agar www.conf U qulab tushdi.etufo.org.conf U hali ham normal ishlashi mumkin va butun serverni ishdan chiqarmaydi.
Haqiqiy dunyodagi dastur stsenariylari
- Yagona saytli serverFaqat foydalaning
www.confYetarli. - Ko'p saytli serverHar bir sayt uchun bittadan yarating
.confFayllar, masalanetufo.org.conf. - dummy.confFaqat ma'lumot uchun, tavsiya etilmaydi.
Konfiguratsiyani taqqoslash misoli
[www]
user = www-data
group = www-data
listen = /run/php/php8.3-fpm.sock
pm = dynamic
pm.max_children = 5
etufo.org.conf (Maxsus hovuz)
[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
Farq foydalanuvchida, tinglash manzilida va jarayonlar sonida ekanligini ko'rasiz.
PHP-FPM jarayon pulining parametrlarini sozlash
Agar konfiguratsiya ishlatilsa DinamikBu ba'zi ish jarayonlarini oldindan boshlash va ularni so'rov hajmiga qarab dinamik ravishda sozlash usuli bo'lib, so'rov hajmi to'satdan oshganida tezroq javob berishi mumkin.
Muayyan trafik miqdori bo'lgan veb-saytlar uchun foydalanish tavsiya etiladi pm = dynamicChunki u ma'lum miqdordagi bo'sh jarayonlarni saqlab turishi va yuqori parallellik vaqtida 500 ta xatolikdan qochishi mumkin.
Uni faqat kirish hajmi juda past va xotira resurslari tor bo'lganda ishlatish tavsiya etiladi. pm = ondemand Resurslarni tejash uchun.
Uni dinamikaga o'zgartirish va optimallashtirish tavsiya etiladi. pm.max_children Va boshqa parametrlar:
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 后自动退出
Ushbu konfiguratsiya resurslarni isrof qilishdan qochib, samaradorlikni ta'minlaydi.
Batafsil konfiguratsiya ko'rsatmalari uchun quyidagi qo'llanmaga qarang ▼
Rasmiy PHP hujjatlariga ko'ra:
"Har bir basseyn mustaqil ravishda sozlanishi mumkin, bu har bir dastur uchun turli foydalanuvchilar, cheklovlar va sozlamalarni hisobga oladi."
Ushbu bayonot ko'p hovuzli konfiguratsiyaning ahamiyatini aniq ko'rsatib beradi: mustaqillik, moslashuvchanlik va boshqarilishi.
Xulosa: Mening nuqtai nazarim
Server konfiguratsiyasi orkestrdagi dirijyorga o'xshaydi, u har bir cholg'u qanday chalinishini belgilaydi.
www.conf Bu yakkaxon chiqishlar uchun mos bo'lgan standart dirijyor;etufo.org.conf Bu ma'lum bir sahna uchun maxsus tayyorlangan dirijyor; va dummy.conf Bu sizga yangi kuylarni qanday yozishni eslatuvchi musiqiy partituralarning qoralamasidir.
Axborot xavfsizligi va unumdorlikni optimallashtirishga qaratilgan davrda, ushbu konfiguratsiya fayllaridan qanday qilib to'g'ri foydalanishni bilish serverning hayot chizig'ini boshqarishning kalitidir.
Konfiguratsiya shunchaki oddiy matn emas; bu serverning ruhidir.
Agar siz faoliyat yuritayotgan bo'lsangizWordPressKo'p saytli ilovalar uchun serveringizni chinakam mustahkam qilish uchun ushbu pul fayllarini, ayniqsa jarayon puli parametrlari sozlamalarini darhol tekshirish va optimallashtirishingizni tavsiya qilamiz.
Umid qilamanki, Chen Veyliang blogi ( https://www.chenweiliang.com/ Bu yerda baham ko'rilgan "PHP-FPM /etc/php/8.3/fpm/pool.d/ konfiguratsiya faylining farqlari va optimallashtirish usullari" maqolasi siz uchun foydali bo'lishi mumkin.
Ushbu maqolaning havolasini baham ko'rish uchun xush kelibsiz:https://www.chenweiliang.com/cwl-33845.html

