Saya memiliki server 64-bit tetapi hanya 256MB RAM. Jadi, saya pindah ke server nginx dengan fast-cgi untuk terhubung ke PHP. Saya menjalankan PHP 5.3.6.
Masalahnya adalah bahwa setelah setiap dua atau tiga hari ketika saya mencoba mengakses halaman PHP apa pun maka saya mendapatkan kesalahan internal server. Satu-satunya cara adalah memulai kembali php-fpm secara manual. Ini berarti saya harus menetapkan beberapa parameter yang salah yang menyebabkannya tersedak. Di bawah ini saya telah mendaftarkan konfigurasi yang relevan.
/etc/php-fpm.conf: -
include=/etc/php-fpm.d/*.conf
log_level = error
;emergency_restart_threshold = 0
;emergency_restart_interval = 0
;process_control_timeout = 0
/etc/php-fpm.d/www.conf: -
[www]
pm = dynamic
pm.max_children = 10
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 5
pm.max_requests = 500
/etc/nginx/php.conf: -
location ~ \.php {
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
fastcgi_pass unix:---some-location---;
}
Perbarui 1
Dan saya memiliki empat proses nginx yang sedang berjalan. Rata-rata setiap proses php-fpm membutuhkan 35MB RAM (ukuran memori Virtual masing-masing 320MB). Saya juga menjalankan proses MySql.
Perbarui 2
Saya lupa menempelkan log.
log kesalahan php-fpm: -
WARNING: [pool www] seems busy (you may need to increase start_servers, or min/max_spare_servers), spawning 8 children, there are 1 idle, and 7 total children
WARNING: [pool www] server reached max_children setting (10), consider raising it
NOTICE: Terminating ...
php-fpm www.error log: -
PHP Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 122880 bytes) in /home/webadmin/blog.applegrew.com/html/wordpress/wp-content/plugins/jetpack/class.jetpack-signature.php on line 137
PHP Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 122880 bytes) in /home/webadmin/blog.applegrew.com/html/wordpress/wp-content/plugins/jetpack/class.jetpack-signature.php on line 137
PHP Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 122880 bytes) in /home/webadmin/blog.applegrew.com/html/wordpress/wp-content/plugins/jetpack/class.jetpack-signature.php on line 137
free
dan mulai. Saya membagi memori bebas dengan 35 untuk mendapatkanmax_children value
. Saya tidak mendapatkan tujuan dari para terakhir.