Адрозненні і метады аптымізацыі ў файле канфігурацыі PHP-FPM /etc/php/8.3/fpm/pool.d/

Ці ўсё ў парадку пасля запуску сервера? Насамрэч, у свеце PHP-FPM файл канфігурацыі з'яўляецца сапраўдным галоўнай прычынай таго, ці можа сайт працаваць стабільна, бяспечна і эфектыўна.

Якая канфігурацыя пула працэсаў для PHP-FPM?

PHP-FPM (FastCGI Process Manager) — гэта менеджэр працэсаў для PHP, які выкарыстоўвае канцэпцыю «пулаў» для кіравання працэсамі PHP для розных вэб-сайтаў або праграм.

Кожны .conf Файл — гэта вызначэнне пула, якое ўказвае ключавыя параметры, такія як карыстальнік, на якім працуе працэс, порт або сокет, які ён праслухоўвае, шлях журнала і колькасць працэсаў.

Іншымі словамі, гэтыя файлы падобныя на «клоны» вашага сервера, што дазваляе розным сайтам працаваць незалежна адзін ад аднаго, не перашкаджаючы адзін аднаму.

Адрозненні і метады аптымізацыі ў файле канфігурацыі PHP-FPM /etc/php/8.3/fpm/pool.d/

www.conf: Пул працэсаў па змаўчанні

Пасля ўсталёўкі PHP-FPM сістэма аўтаматычна згенеруе... www.conf файл.

Яго функцыя заключаецца ў тым, каб забяспечыць пул па змаўчанні, які працуе адразу пасля ўсталёўкі, звычайна ў... www-data Карыстальнік.

Гэты пул падыходзіць для асяроддзяў з адным сайтам, яго лёгка наладзіць, і большасць параметраў з'яўляюцца агульнымі значэннямі, такімі як:

  • user = www-data
  • group = www-data
  • listen = /run/php/php8.3-fpm.sock
  • pm.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

Каб адкрыць больш схаваных хітрасцяў🔑, далучайцеся да нашага канала ў Telegram!

Падзяліцеся і пастаўце лайкі, калі вам гэта падабаецца! Вашы акцыі і лайкі - наша пастаянная матывацыя!

 

发表 评论

Ваш электронны адрас не будзе апублікаваны. 必填 项 已 用 * Этыкетка

Каталог артыкулаў
Пракрутка да пачатку