Bagaimana untuk memilih MPM yang sesuai untuk Apache?
MPM Apache Terbaik bergantung pada stack aplikasi dan keperluan trafik anda: 1. Gunakan Prefork jika bergantung pada modul yang tidak selamat seperti mod_php dan mengutamakan kestabilan. 2. Gunakan pekerja untuk moderat hingga lalu lintas yang tinggi dengan persediaan thread-selamat dan kecekapan memori yang lebih baik. 3. Gunakan acara untuk persediaan yang tinggi dan persediaan moden dengan PHP-FPM atau proksi terbalik, kerana ia mengendalikan sambungan yang berterusan. Sentiasa pasangkan MPM dengan backend yang serasi-PHP-FPM yang serasi untuk acara atau pekerja-dan melumpuhkan mod_php apabila tidak menggunakan prefork untuk memastikan prestasi dan kestabilan yang optimum.
Memilih modul multi-pemprosesan yang betul (MPM) untuk Apache adalah penting untuk prestasi, skalabiliti, dan kestabilan. Apache menyokong MPM yang berbeza untuk mengendalikan permintaan masuk, dan pilihan terbaik bergantung pada perkakasan, corak lalu lintas, dan keperluan aplikasi pelayan anda. Inilah cara memilih yang betul.

Memahami MPM utama
Apache menawarkan beberapa MPM, tetapi tiga yang paling biasa adalah:
- Prefork
- Pekerja
- Peristiwa
Setiap mengendalikan permintaan secara berbeza dari segi proses dan benang.

1. Prefork MPM-Terbaik untuk Perisian Legacy atau Non-Thread-Safe
- Menggunakan pelbagai proses kanak -kanak, masing -masing mengendalikan satu sambungan pada satu masa.
- Tiada threading-Setiap proses adalah satu-threaded.
- Sangat stabil dan serasi dengan modul yang tidak selamat (contohnya, mod_php).
✅ Gunakan Prefork jika:
- Anda menggunakan PHP yang lebih tua (melalui MOD_PHP) atau modul lain yang tidak selamat.
- Anda mengutamakan kestabilan atas kesesuaian yang tinggi.
- Pelayan anda mempunyai RAM terhad tetapi mengendalikan trafik sederhana.
⚠️ Downsides:

- Penggunaan memori yang tinggi (setiap proses adalah memori berat).
- Tidak sesuai untuk tapak trafik tinggi.
2. Pekerja MPM - Prestasi seimbang dengan benang
- Menggunakan campuran proses dan benang.
- Setiap proses boleh menanam pelbagai benang, masing -masing melayani permintaan.
- Lebih banyak ingatan memori daripada prefork.
✅ Gunakan pekerja jika:
- Anda mahu keseragaman yang lebih baik dan penggunaan memori yang lebih rendah.
- Anda menggunakan modul selamat thread (misalnya, php-fpm bukan mod_php).
- Lalu lintas anda sederhana hingga tinggi.
⚠️ Downsides:
- Sesetengah modul mungkin tidak selamat benang.
- Kurang stabil daripada prefork dalam keadaan tertentu.
3. MPM Acara - Terbaik untuk persediaan konkurensi tinggi dan moden
- Varian pekerja, dioptimumkan untuk sambungan lama (seperti Keepalive).
- Menggunakan benang khusus untuk menguruskan sambungan terbiar, membebaskan pekerja.
- Direka untuk persekitaran yang berprestasi tinggi dan tinggi.
✅ Gunakan acara jika:
- Anda mengharapkan kesesuaian yang tinggi (banyak pengguna serentak).
- Anda menggunakan php-fpm atau proksi terbalik (contohnya, dengan aplikasi node.js atau python).
- Anda mahu pengendalian yang cekap untuk sambungan terbiar atau berterusan.
⚠️ Downsides:
- Boleh menjadi sukar untuk menyesuaikan diri.
- Mungkin mempunyai masalah dengan modul lama tertentu (misalnya, mod_php).
Pertimbangkan timbunan aplikasi anda
MPM mesti selaras dengan cara backend anda berfungsi:
- Menggunakan mod_php (DSO)? → melekat dengan prefork .
- Menggunakan php-fpm dengan fastcgi? → Pergi untuk acara atau pekerja .
- Melayani kandungan statik atau berbalik-proxying? → Acara adalah ideal.
? Penyediaan kebanyakan moden menggunakan php-fpm nginx atau apache dalam mod roxy, tetapi jika anda menggunakan Apache sebagai pelayan web utama, MPM acara berpasangan dengan PHP-FPM memberikan prestasi yang sangat baik.
Periksa versi OS dan Apache anda
- MPM peristiwa stabil di Apache 2.4 tetapi percubaan dalam versi terdahulu.
- Pada Debian/Ubuntu,
apache2
biasanya mungkir ke acara jika PHP tidak dimuatkan sebagai modul. - Pada Rhel/Centos, periksa dengan:
httpd -v | grep 'mpm'
Cara Mengubah MPMS (Contoh Debian/Ubuntu)
Apache biasanya membenarkan hanya satu mpm diaktifkan pada satu masa.
# Periksa mpm semasa apache2ctl -v | grep 'mpm' # Beralih ke acara (jika belum) sudo a2dismod mpm_prefork sudo a2enmod mpm_event # Jika menggunakan php, lumpuhkan mod_php dan gunakan fpm sudo a2dismod php sudo apt memasang php-fpm sudo a2enconf php-fpm # Mulakan semula Apache SURDO SYSTEMCTL Mulakan semula Apache2
Tune tetapan mpm
Selepas memilih, laraskan arahan dalam fail konfigurasi MPM (misalnya, /etc/apache2/mods-available/mpm_event.conf
):
<Ifmodule mpm_event_module> Startservers 3 MinspareThreads 75 MaxSpareThreads 250 Threadlimit 64 Threadsperchild 25 MaxRequestworkers 400 MaxConnectionSperChild 1000 </Ifmodule>
Laraskan berdasarkan:
- RAM tersedia:
MaxRequestWorkers × memory_per_process ≈ total_memory_used
- Trafik yang dijangkakan: Trafik yang lebih tinggi →
MaxRequestWorkers
yang lebih tinggi - Penggunaan Keepalive: Acara mengendalikan ini lebih baik daripada pekerja atau prefork
Bottom Line:
Bagi pelayan Apache yang paling moden dan tinggi, MPM Acara PHP-FPM adalah kombo terbaik.
Stick dengan prefork hanya jika anda bergantung pada modul yang tidak selamat.
Pekerja adalah tanah tengah tetapi sebahagian besarnya digantikan oleh acara.
Pada asasnya, sepadan dengan MPM ke persediaan backend anda dan keperluan lalu lintas - dan selalu lumpuhkan mod_php jika anda tidak menggunakan prefork.
Atas ialah kandungan terperinci Bagaimana untuk memilih MPM yang sesuai untuk Apache?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Stock Market GPT
Penyelidikan pelaburan dikuasakan AI untuk keputusan yang lebih bijak

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Keepaliveon membolehkan sambungan berterusan; 2.MaxKeepaliverequests100 menetapkan bilangan maksimum permintaan setiap sambungan; 3.KeepaliveTimeout5 Menetapkan masa untuk menunggu permintaan berikutnya, mulakan semula Apache selepas konfigurasi dan gunakan alat pemaju curl atau pelayar untuk mengesahkan sama ada Keepalive berkesan untuk mengoptimumkan prestasi pelayan.

First,verifythelibphp.sofileexistsusingfindorlocatecommands;ifmissing,reinstallPHPwithApachesupportviapackagemanager.2.CheckApacheconfigurationfilesforcorrectLoadModuledirectivepathandremoveduplicates.3.EnsureApacheandPHPversionsandarchitecturesmatch

Pasang CertBot dan pemalam Apache; 2. Jalankan Certbot untuk mendapatkan sijil dan konfigurasikan nama domain; 3. Secara pilihan mengkonfigurasi pengalihan automatik dari HTTP ke HTTPS; 4. Sediakan pembaharuan automatik dan lulus ujian kering; 5. Sahkan pemasangan dan pastikan konfigurasi tambah nilai biasa Apache. Selepas sijil berjaya digunakan, pembaharuan akan diuruskan secara automatik. Selepas keseluruhan proses selesai, akses HTTPS selamat dapat dicapai.

Ondebian/ubuntu, themainapacheconfigurationfileis/etc/apache2/apache2.conf, withadditionalconfigurationsin/etc/apache2/sites-av Ailable/dan/etc/apache2/conf-available/.2.onrhel/centos/fedora, itistypically/etc/httpd/conf/httpd.conf, withextrafilesin/etc/h

Thedefaultapacheportforhttpis80.1.port80isusedforunencryptedHttptrafficandisthestandardforwebserverServerSinkludingapache.2

Untuk menyediakan halaman ralat 404 adat, anda perlu membuat fail halaman dan mengkonfigurasi laluan di Apache. 1. Buat halaman 404 adat, seperti menyimpan 404.html ke direktori root laman web; 2. Tambah errordocument404/404.html ke fail .htaccess direktori root laman web untuk memastikan bahawa allowoverride diaktifkan; 3. Jika anda menggunakan VPS atau pelayan mandiri, anda boleh menambah errordocument404/404.html dalam fail konfigurasi host maya (seperti 000-default.conf) dan mulakan semula perkhidmatan Apache; 4. Uji sama ada halaman tersuai berkuatkuasa dengan mengakses URL yang tidak wujud. Semasa mengkonfigurasi

Toblockanipinapache2.4 , usetherequiredirectivewithinablock, sucheasrequireallgrantedrequirenoTip192.168.1.100toblockasingleip, Asubnetlike192.168.1, OrmultiplespecificipsbePeatingTheRequirenotipline,

Windows File Manager tidak boleh secara langsung menukar format fail dalam kelompok kerana ia hanya bertanggungjawab untuk pengurusan fail dan tidak memproses kandungan fail; Ia perlu menggunakan alat pihak ketiga seperti Irfanview dan FFMPEG untuk mencapai penukaran batch yang cekap, digabungkan dengan pengurus fail untuk menapis fail dan alat import, dan melengkapkan penukaran melalui antara muka grafik atau baris arahan. Alat baris arahan mempunyai kelebihan automasi, kecekapan tinggi dan kawalan yang tepat, tetapi perhatian harus dibayar kepada kos pembelajaran, pengendalian ralat dan sandaran fail.
