مما يجعل البرامج النصية PHP الوقت حتى لا يقتل الخادم
سؤال
السبب ربما كان ذلك هربت من مساحة القرص ، مما تسبب في كل شيء للعمل بشكل غريب.سأترك هذا السؤال على أي حال في حالة أي شخص آخر لديه مشكلة مشابهة.
لدي بعض البرامج النصية PHP التي علقت لفترة طويلة ، ولكن يبدو انهم حقا لا تستخدم الكثير من الوقت وحدة المعالجة المركزية كما أنها لا يقتل.لا يزال هم مما يجعل من المستحيل على lighttpd تفرخ المزيد من PHP العمليات قدر ممكن منهم قد ولدت بالفعل.
أنا على بينة من set_time_limit التي يمكن استخدامها بوصفها وظيفة أو وضع في php.ini للسيطرة على أقصى قدر من الوقت وحدة المعالجة المركزية السيناريو يمكن تشغيل.ما أريده هو أن الحد كافة البرامج النصية PHP تشغيل خادم الويب الخاص بي (lighttpd) ليس في الوقت وحدة المعالجة المركزية ، ولكن وقت على مدار الساعة.
في حالة يهم, هذا هو PHP جزء من lighttpd config.
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,
)))
هنا هو بلدي server-حالة من lighttpd.يمكنك أن ترى أن PHP وقد تم تشغيل أطول بكثير مما كنت تتمناه و قد تسبب الملقم تسد.الغريب كما يبدو أن هناك أكثر PHP procs من max-procs.
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 ...
أي الأفكار التي يمكن أن تساعدني في إعداد التكوين أن لا يكون باستمرار ارع سيكون محل تقدير كبير!
المحلول
ربما أنت أفضل حالا تحرير php.ini و تعيين الأذونات هناك.
;;;;;;;;;;;;;;;;;;;
; 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)
نصائح أخرى
أنا لست متأكد من أنك يمكن أن تفعل ذلك في lighttpd.هل يمكن أن اقامة "الدوار" سكربت فحص دوري علقت عمليات وقتلهم.