Bu yüzden benim sunucu öldürmeyin PHP betikleri zaman aşımı yapma

2 Cevap php

The cause was probably that I ran out of disk space, causing everything to work strangely. I will leave this question up anyways in case anyone else has a similar issue.

Ben uzun bir süre asılı bir kaç PHP scriptler var, ama onlar öldürdü alamadım gibi görünüşe göre onlar gerçekten çok CPU zamanı kullanarak değil. Yine de onlar imkansız lighttpd'nin bunlardan azami miktar olarak daha fazla PHP süreçleri yumurtlamak için yapıyoruz zaten oluşmasına neden olmuştur.

Ben bir fonksiyonu olarak kullanılan veya bir komut dosyası çalıştırabilirsiniz maksimum CPU zamanını kontrol etmek için php.ini içine konabilir set_time_limit farkındayım. Ne ben istemiyorum CPU zamanında benim web sunucusu (lighttpd'nin) tarafından işletilen tüm PHP komut sınırı olduğunu, ancak saat zaman.

Bu konularda durumda, bu benim lighttpd yapılandırma dosyasından PHP parçasıdır.

fastcgi.server = (".php" => ((
 "bin-path" => "/opt/local/bin/php5-cgi",
 "socket" => "/tmp/php.socket" + var.PID,
 "min-procs" => 16,
 "max-procs" => 16,
 "idle-timeout" => 15,
)))

İşte lighttpd benim sunucu durumudur. PHP için pazarlık ve sunucu kadar zarar neden oldu daha uzun çalışmakta olduğunu görebilirsiniz. Gariptir aynı zamanda benim max-procs daha PHP kaçırmamasını var gibi görünüyor.

legend
. = connect, C = close, E = hard error
r = read, R = read-POST, W = write, h = handle-request
q = request-start,  Q = request-end
s = response-start, S = response-end
388 connections
hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
hhhrhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
hhhhhhhhhhhhhrhhhhhhhhhhhhhhhhhhhhhhhhrhhhhhhhhhhh
hhhhrhhhhhhhhhhrhrhhhrrhrhhhhhrhhhrhhhhhhrhhhrrrhr
rrhrrrhrhhhhrrhrrhhrrhrrhrrrrrrrrrrrrh

Connections
Client IP:  Read: 	Written: 	State: 	Time: 	Host: 	URI: 	File:
204.16.33.51    0/0	0/0	handle-req	1361	... (a PHP script)
204.16.33.46    0/0	0/0	handle-req	1420	... (another PHP script)
... gazillion lines removed ...

Bana sürekli bakıcılık yapmak zorunda değilsiniz, bir yapılandırma kurmak yardımcı olabilir Herhangi bir fikir çok duyacağız!

2 Cevap

Sen php.ini dosyasını düzenleme ve orada izinlerini ayarlayarak muhtemelen kapalı en iyi konum.

;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;

max_execution_time = 30     ; Maximum execution time of each script, in seconds
max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
memory_limit = 32M      ; Maximum amount of memory a script may consume (8MB)

Ben lighttpd bu yapabilirim emin değilim. Ancak, periyodik asılı süreçler için kontrol etmek ve onları öldürmek için bir "spinner" Senaryoyu kurmak olabilir.