Bug #51466 [Opn->Fbk]: zlib.output_compression gets disabled on some processes
Edit report at https://bugs.php.net/bug.php?id=51466&edit=1
ID: 51466
Updated by: mike@php.net
Reported by: radek at pinkbike dot com
Summary: zlib.output_compression gets disabled on some
processes
-Status: Open
+Status: Feedback
Type: Bug
Package: Output Control
Operating System: Centos 5.3 x86_64
PHP Version: 5.2.13
-Assigned To:
+Assigned To: mike
Block user comment: N
Private report: N
New Comment:
Please try using this snapshot:
http://snaps.php.net/php5.4-latest.tar.gz
For Windows:
http://windows.php.net/snapshots/
Previous Comments:
------------------------------------------------------------------------
[2010-04-02 22:09:00] radek at pinkbike dot com
Description:
------------
PHP 5.2.13
Linux r56 2.6.18-164.11.1.el5 #1 SMP Wed Jan 20 07:32:21 EST 2010 x86_64 x86_64
x86_64 GNU/LinuxApache/2.2.3 (CentOS) mod_ssl/2.2.3 OpenSSL/0.9.8e-fips-rhel5
On a fairly busy server, (50 php req/s) we see that some processes stop
compressing page output. I have narrowed it down to where a process pid which
transitions to this state, remains in this state until recycled/restarted
(MaxRequestsPerChild reached).
In this state, where gzip is not working, output headers do not contain Content
encodign gzip, so the output is fine. It's just not using compression.
So when all processes are restarted, page compression works correctly for some
indeterminate time, after which, some processes transition to a state where they
do not compress the output. Once in this state a process ALWAYS ignores the
compression until recycled.
Some additional info:
We only run a max limit of 100 processes, and typically active processes are
about 20 or so.
I have decreased MaxRequestsPerChild to about 40,000 which recycles processes
every 2 hours or so, and we still see about 50% of our pages delivered without
compression.
Expected result:
----------------
The problem happens with zlib.output_compression on. If I use output_handler =
ob_gzhandler, compression never degrades, and it works as expected.
Actual result:
--------------
I am not sure what the trigger is but would like to help solve this issue. If
someone can give me some insight into this I can debug further.
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=51466&edit=1
Thread (3 messages)