Perbezaan dan teknik pengoptimuman dalam fail konfigurasi PHP-FPM /etc/php/8.3/fpm/pool.d/

Adakah semuanya baik-baik saja sebaik sahaja pelayan berjalan? Sebenarnya, dalam dunia PHP-FPM, fail konfigurasi adalah dalang sebenar, menentukan sama ada laman web boleh berjalan dengan stabil, selamat dan cekap.

Apakah konfigurasi kumpulan proses untuk PHP-FPM?

PHP-FPM (FastCGI Process Manager) ialah pengurus proses untuk PHP yang menggunakan konsep "pools" untuk mengurus proses PHP untuk laman web atau aplikasi yang berbeza.

Setiap .conf Fail tersebut merupakan definisi kumpulan yang menentukan parameter utama seperti pengguna tempat proses dijalankan, port atau soket yang didengari, laluan log dan bilangan proses.

Dalam erti kata lain, fail-fail ini seperti "klon" untuk pelayan anda, yang membolehkan laman web yang berbeza berjalan secara bebas tanpa mengganggu satu sama lain.

Perbezaan dan teknik pengoptimuman dalam fail konfigurasi PHP-FPM /etc/php/8.3/fpm/pool.d/

www.conf: Kolam proses lalai

Selepas memasang PHP-FPM, sistem akan menjana secara automatik www.conf fail.

Fungsinya adalah untuk menyediakan kolam lalai yang berfungsi secara automatik, biasanya berjalan dalam... www-data Pengguna.

Kolam ini sesuai untuk persekitaran tapak tunggal, mudah dikonfigurasikan dan kebanyakan parameter adalah nilai generik, seperti:

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

Jika anda hanya menjalankan di satu laman web, ini sudah memadai.

etufo.org.conf: Kolam tapak tersuai

Apabila anda mempunyai berbilang tapak, anda perlu membuat kolam berasingan untuk setiap tapak.

seperti etufo.org.confIa khusus untuk nama domain. etufoBhg. Konfigurasi eksklusif.

Amalan biasa ialah:

  • Tentukan pengguna dan kumpulan yang berbeza, contohnya user = etufo,group = etufo
  • Konfigurasikan port atau soket pendengaran yang berasingan, contohnya listen = /run/php/etufo.sock
  • Laraskan bilangan proses untuk memastikan kestabilan tapak di bawah keserentakan yang tinggi.
  • Fail log bebas memudahkan penyelesaian masalah.

Kelebihan pendekatan ini ialah pengasingan keselamatan: walaupun satu laman web diserang, laman web lain tidak akan terjejas.

dummy.conf: Contoh atau fail ruang letak

dummy.conf Ini biasanya templat atau contoh yang disediakan oleh sistem.

Ia tidak akan diaktifkan melainkan anda mengubah suai dan mendayakannya secara manual.

Tujuannya adalah untuk memberi anda rujukan dan menunjukkan kepada anda cara menulis konfigurasi kolam baharu.

Oleh itu, ia lebih seperti "manual arahan" daripada konfigurasi sebenar untuk operasi.

Mengapa menggunakan berbilang fail himpunan?

  • 安全 性Laman web yang berbeza harus dijalankan oleh pengguna yang berbeza untuk mengelakkan pertindihan kebenaran.
  • 性能优化Bilangan proses boleh ditetapkan secara individu untuk setiap kumpulan dan diselaraskan mengikut permintaan trafik.
  • PengasinganLog, output ralat dan port pendengaran semuanya diasingkan, menjadikan penyelesaian masalah lebih mudah.

Contohnya, jika www.conf Ia runtuh.etufo.org.conf Ia masih boleh berjalan seperti biasa dan tidak akan menyebabkan keseluruhan pelayan tergendala.

Senario aplikasi dunia sebenar

  • Pelayan tapak tunggalHanya guna www.conf Cukuplah tu.
  • Pelayan berbilang tapakBina satu untuk setiap tapak .conf Fail, seperti etufo.org.conf.
  • dummy.confUntuk rujukan sahaja, tidak digalakkan.

Contoh Perbandingan Konfigurasi

www.conf (kumpulan lalai)

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

etufo.org.conf (Kolam Tersuai)

[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

Anda akan mendapati perbezaannya terletak pada pengguna, alamat pendengaran dan bilangan proses.

Melaraskan parameter kumpulan proses PHP-FPM

Jika konfigurasi menggunakan dinamikIni ialah kaedah pra-memulakan beberapa proses kerja dan melaraskannya secara dinamik mengikut volum permintaan, yang boleh bertindak balas dengan lebih pantas apabila volum permintaan meningkat secara tiba-tiba.

Untuk tapak web dengan jumlah trafik tertentu, adalah disyorkan untuk digunakan pm = dynamicKerana ia boleh mengekalkan sejumlah proses terbiar dan mengelakkan 500 ralat semasa konkurensi tinggi.

Adalah disyorkan untuk menggunakannya hanya apabila volum capaian sangat rendah dan sumber memori ketat. pm = ondemand Untuk menjimatkan sumber.

Adalah disyorkan untuk mengubahnya kepada dinamik dan mengoptimumkannya. pm.max_children Dan parameter lain:

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 后自动退出

Konfigurasi ini memastikan prestasi sambil mengelakkan pembaziran sumber.

Untuk arahan konfigurasi terperinci, sila rujuk tutorial berikut ▼

Menurut dokumentasi PHP rasmi:

"Setiap kolam boleh dikonfigurasikan secara bebas, membolehkan pengguna, had dan tetapan yang berbeza bagi setiap aplikasi."

Pernyataan ini dengan jelas menunjukkan kepentingan konfigurasi berbilang kolam: kebebasan, fleksibiliti dan kebolehkawalan.

Kesimpulan: Pandangan Saya

Konfigurasi pelayan adalah seperti konduktor dalam orkestra, yang menentukan bagaimana setiap alat muzik harus dimainkan.

www.conf Ia merupakan konduktor lalai, sesuai untuk persembahan solo;etufo.org.conf Ia merupakan konduktor yang dibuat khas untuk peringkat tertentu; dan dummy.conf Ia merupakan draf skor muzik, mengingatkan anda cara menulis melodi baharu.

Dalam era yang memberi tumpuan kepada keselamatan maklumat dan pengoptimuman prestasi, mengetahui cara menggunakan fail konfigurasi ini dengan betul adalah kunci untuk mengawal talian hayat pelayan.

Konfigurasi bukan sekadar teks remeh; ia adalah jiwa pelayan.

Jika anda beroperasiWordPressUntuk aplikasi berbilang tapak, kami sangat mengesyorkan agar anda segera menyemak dan mengoptimumkan fail kumpulan ini, terutamanya tetapan parameter kumpulan proses, untuk menjadikan pelayan anda benar-benar kukuh.

发表 评论

Alamat e-mel anda tidak akan diterbitkan. 必填 项 已 用 * 标注

Direktori Artikel
Tatal ke