Penyelesaian kepada masalah php-fpm mengambil terlalu banyak memori: Tetapkan pm.min_spare_servers dan pm.max_spare_servers dalam julat yang munasabah untuk memastikan bilangan proses akan terus berubah.
Persekitaran pengendalian artikel ini: sistem Windows 10, PHP7, komputer thinkpad t480.
Kaedah untuk menyelesaikan masalah php-fpm mengambil terlalu banyak memori adalah seperti berikut:
Kaedah 1: Laraskan mod pengurusan
mod pengurusan statik sesuai untuk Pelayan memori yang lebih besar, dan dinamik sesuai untuk pelayan dengan memori kecil Anda boleh menetapkan julat pm.min_spare_servers dan pm.max_spare_servers yang munasabah, supaya bilangan proses akan terus berubah. Mod ondemand lebih sesuai untuk memori kecil, seperti memori 512MB atau 256MB, dan persekitaran dengan keperluan ketersediaan yang rendah.
Kaedah 2: Kurangkan bilangan proses php-fpm
Jika memori hos VPS anda telah diduduki dan kehabisan, anda boleh menyemak bilangan proses php-fpm anda mengikut nombor daripada pengiraan proses php-fpm =memori/2/30, bilangan proses php-fpm yang sesuai untuk 1GB memori adalah antara 10-20, bergantung pada alat tambah yang dimuatkan oleh PHP anda.
contoh konfigurasi php-fpm
Berikut ialah konfigurasi VPS php-fpm dengan memori 1GB sebagai demonstrasi Dalam operasi sebenar, nilai tetapan mesti dipertimbangkan berdasarkan prestasi pelayan sendiri, PHP, dll.
pm = dynamic #dynamic和ondemand适合小内存。 pm.max_children = 15 #static模式下生效,dynamic不生效。 pm.start_servers = 8 #dynamic模式下开机的进程数量。 pm.min_spare_servers = 6 #dynamic模式下最小php-fpm进程数量。 pm.max_spare_servers = 15 #dynamic模式下最大php-fpm进程数量。
Pembelajaran yang disyorkan: latihan php
Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika php-fpm mengambil terlalu banyak memori?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!