Apache-Dynagzip
view release on metacpan or search on metacpan
0.11 Mon Jul 21 11:00:00 2003
- bugfix. It was noticed that Apache::Dynagzip in some cases overwrites the Content-Type set
by the earlier filter. Thanks to John Siracusa for the hint. This was fixed to "never
overwrite the existent outgoing Content-Type".
31136 Jul 21 2003 Apache-Dynagzip-0.11.tar.gz
0.10 Fri Jul 18 23:30:00 2003
- Rob Bloodgood and Damyan Ivanov complained about "uninitialized value" warnings from unused
HTTP headers, and about pack mode "c", which generated warnings on their systems (running -w).
I failed to reproduce the effect of pack mode, but decided to change the mode to "C"
because it has been reported as a clean solution for both Rob and Damyan from one side,
and this should not effect the packed code (as I understand it) from the other side.
"Uninitialized value" warnings were blocked in accordance with the patch provided by Rob Bloodgood.
All changes were manually double-checked with the patch provided by Damyan Ivanov.
- partial code revision has been done in order to prepare the further structural changes.
30927 Jul 20 01:09 Apache-Dynagzip-0.10.tar.gz
0.09 Sun Jan 05 01:45:00 2003
- Vlad Jebelev's patch was applied in order to serve possible dynamic Apache downgrade to HTTP/1.0
(especially processing MSIE requests over SSL).
Dynagzip.pm view on Meta::CPAN
use constant OSCODE => 3 ;
use constant MIN_HDR_SIZE => 10 ; # minimum gzip header size
use constant MIN_CHUNK_SIZE_DEFAULT => 8; # when gzip only
use constant MIN_CHUNK_SIZE_SOURCE_DEFAULT => 32768; # when gzip only
use constant CHUNK_PARTIAL_FLUSH_DEFAULT => 'On';
use constant MIN_CHUNK_SIZE_PP_DEFAULT => 8192; # for no gzip case
use constant MAX_ATTEMPTS_TO_TRY_FLOCK => 10; # max limit seconds to sleep, waiting for flock()
use constant PAGE_LIFE_TIME_DEFAULT => 300; # sec
sub can_gzip_for_this_client {
# This is the only place where I decide whether or not the main request
# could be served with gzip compression.
# call model: my $can_gzip = can_gzip_for_this_client($r);
my $r = shift;
my $result = undef; # false is default
local $^W = 0; # no warnings when Accept-Encoding does not exist:
if ($r->header_in('Accept-Encoding') =~ /gzip/){
$result = 1; # true
}
# See Apache::CompressClientFixup for all known exceptions...
#
Dynagzip.pm view on Meta::CPAN
dynamic content helped us to scale effectively the bandwidth at
the cost of significantly increased latency of the content delivery.
That was why I came up with an idea to use chunked data transmission of
the gzipped content, sharing a real time between the server side data
creation/compression, media data transmission, and the client side data
decompression/presentation in order to provide end users with the partially
displayed content as soon as it's possible in particular conditions of the
user's connection.
At the time we decided to go for dynamic compression there were no
appropriate software on the market. Even later in
February 2002 Nicholas Oxhøj wrote to the mod_perl mailing list about his
experience of finding Apache gzipper for the streaming outgoing content:
=for html
<blockquote>
I<"... I have been experimenting with all the different Apache compression modules
I have been able to find, but have not been able to get the desired result.
I have tried Apache::GzipChain, Apache::Compress, mod_gzip and mod_deflate, with
( run in 0.811 second using v1.01-cache-2.11-cpan-de7293f3b23 )