Справочник на статиите
Всичко наред ли е, след като сървърът работи? Всъщност, в света на PHP-FPM, конфигурационният файл е истинският мозък, определящ дали сайтът може да работи стабилно, сигурно и ефективно.
Каква е конфигурацията на пула процеси за PHP-FPM?
PHP-FPM (FastCGI Process Manager) е мениджър на процеси за PHP, който използва концепцията за „пулове“ за управление на PHP процеси за различни уебсайтове или приложения.
Всеки .conf Файлът е дефиниция на пул, която определя ключови параметри като потребителя, на когото се изпълнява процесът, порта или сокета, на който слуша, пътя на лога и броя на процесите.
С други думи, тези файлове са като „клонинги“ за вашия сървър, позволявайки на различни сайтове да работят независимо, без да си пречат един на друг.

www.conf: Пулът от процеси по подразбиране
След инсталиране на PHP-FPM, системата автоматично ще генерира www.conf файл.
Функцията му е да осигури пул по подразбиране, който работи веднага щом е инсталиран, обикновено работещ в... www-data Потребител.
Този пул е подходящ за среди с един обект, лесен е за конфигуриране и повечето параметри са общи стойности, като например:
user = www-datagroup = www-datalisten = /run/php/php8.3-fpm.sockpm.max_children = 5
Ако работите само на един сайт, това е достатъчно.
etUfo.org.conf: Персонализиран пул от сайтове
Когато имате няколко сайта, трябва да създадете отделен пул за всеки сайт.
Например etufo.org.confТова е специално за имена на домейни. etUfo. Org Ексклузивна конфигурация.
Обичайната практика е:
- Посочете различни потребители и групи, например
user = etufo,group = etufo - Конфигурирайте отделен порт или сокет за слушане, например
listen = /run/php/etufo.sock - Регулирайте броя на процесите, за да осигурите стабилност на сайта при висока паралелност.
- Независимите лог файлове улесняват отстраняването на проблеми.
Предимството на този подход е изолацията на сигурността: дори ако един сайт бъде атакуван, другите сайтове няма да бъдат засегнати.
dummy.conf: Примерен или заместващ файл
dummy.conf Това обикновено са шаблони или примери, предоставени от системата.
Всъщност няма да бъде активирано, освен ако не го промените и активирате ръчно.
Целта му е да ви предостави справка и да ви покаже как да напишете нова конфигурация на пул.
Следователно, това е по-скоро като „ръководство за употреба“, отколкото като действителна конфигурация за работа.
Защо да използваме множество пул файлове?
- 安全 性Различните сайтове трябва да се управляват от различни потребители, за да се избегне припокриване на разрешения.
- 性能优化Броят на процесите може да се задава индивидуално за всеки пул и да се коригира според търсенето на трафик.
- ИзолацияЖурналите, изходът за грешки и портовете за слушане са разделени, което улеснява отстраняването на неизправности.
Например, ако www.conf То се срути.etufo.org.conf Той все още може да работи нормално и няма да срине целия сървър.
Сценарии на приложения в реалния свят
- Сървър с един сайтИзползвайте само
www.confТова е достатъчно. - Многосайтов сървърИзградете по един за всеки сайт
.confФайлове, като напримерetufo.org.conf. - dummy.confСамо за справка, не се препоръчва.
Пример за сравнение на конфигурации
www.conf (пул по подразбиране)
[www]
user = www-data
group = www-data
listen = /run/php/php8.3-fpm.sock
pm = dynamic
pm.max_children = 5
etufo.org.conf (Персонализиран пул)
[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
Ще откриете, че разликата се крие в потребителя, адреса за слушане и броя на процесите.
Настройване на параметрите на пула от процеси PHP-FPM
Ако конфигурацията използва динамиченТова е метод за предварително стартиране на някои работни процеси и динамичното им настройване според обема на заявките, което позволява по-бърза реакция при внезапно увеличение на обема на заявките.
За уебсайтове с определено количество трафик се препоръчва използването pm = dynamicЗащото може да поддържа определено количество празни процеси и да избягва 500 грешки по време на висока паралелност.
Препоръчително е да се използва само когато обемът на достъп е изключително нисък и ресурсите на паметта са ограничени. pm = ondemand За да се спестят ресурси.
Препоръчително е да го промените на динамичен и да го оптимизирате. pm.max_children И други параметри:
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 后自动退出
Тази конфигурация гарантира производителност, като същевременно се избягва разхищение на ресурси.
За подробни инструкции за конфигуриране, моля, вижте следния урок ▼
Според официалната документация на PHP:
„Всеки пул може да бъде конфигуриран независимо, което позволява различни потребители, ограничения и настройки за всяко приложение.“
Това твърдение ясно посочва значението на конфигурацията с множество басейни: независимост, гъвкавост и управляемост.
Заключение: Моята гледна точка
Конфигурацията на сървъра е като диригент в оркестър, който определя как трябва да се свири всеки инструмент.
www.conf Това е диригентът по подразбиране, подходящ за солови изпълнения;etufo.org.conf Това е диригент, създаден специално за конкретна сцена; и dummy.conf Това е чернова на музикални партитури, която ви напомня как да пишете нови мелодии.
В епоха, фокусирана върху информационната сигурност и оптимизацията на производителността, знанието как правилно да се използват тези конфигурационни файлове е ключово за контролирането на жизненоважната линия на сървъра.
Конфигурацията не е просто тривиален текст; тя е душата на сървъра.
Ако опериратеWordPressЗа приложения с множество сайтове, силно препоръчваме незабавно да проверите и оптимизирате тези файлове от пула, особено настройките на параметрите на пула на процесите, за да направите вашия сървър наистина стабилен.
Блог на Hope Chen Weiliang ( https://www.chenweiliang.com/ Статията „Разлики и техники за оптимизация на конфигурационния файл PHP-FPM /etc/php/8.3/fpm/pool.d/“, споделена тук, може да ви бъде полезна.
Добре дошли да споделите връзката към тази статия:https://www.chenweiliang.com/cwl-33845.html

