httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dirk-Willem van Gulik <di...@webweaving.org>
Subject Re: Excessive chunking [was: mod_disk_cache and atimes]
Date Wed, 26 Mar 2008 16:50:04 GMT

On Mar 26, 2008, at 5:45 PM, Dirk-Willem van Gulik wrote:
>
> On Mar 26, 2008, at 5:23 PM, Konstantin Chuguev wrote:
>
>> A small correction: I meant writev() calls instead of sendfile()  
>> when working with small-size buckets.
>>
>> The filter I'm developing provisionally splits the supplied buckets  
>> into relatively small buckets during content parsing. It then  
>> removes some of them and inserts some other buckets. Before passing  
>> the resulting brigade further down the filter chain, it merges all  
>> buckets that have their data in contiguous memory regions back  
>> together. So I guess I'm doing my bit in preventing excessive  
>> chunking.
>
>> I've done some research on the source files of httpd-2.2.6. The  
>> CORE filter seems to do de-chunking in the case when 16 or more  
>> buckets are passed to it (actually, the brigade is split if it  
>> contains flush buckets and each split part is checked for 16  
>> buckets) AND the total amount of bytes in the 16 buckets does not  
>> exceed 8000. The filter then buffers the buckets together. Very  
>> clever.
>
> Hmm - I am not sure that this always works - i.e. try this :)
> 	
> $ cat test.shtml

Ok - thunderbird quot-ing detection ate the cut and paste -- so it  
should be

	[!--#echo var="error" --] [!--#echo var="error" --] .. repeated  
umpteen times.

replace [] by <>.

> (make sure that all spaces between the > and < are gone) and have  
> the usual:

And that is a type - make sure that there is all but exactly ONE space  
between the > and the <.

> 	AddType text/html .shtml	
> 	AddOutputFilter INCLUDES .shtml
> 	<Directory ..
> 		Options Includes
> 		..
>
> in your config. You then get the output below.
>
> Dw.
>
> (echo GET /test.shtml HTTP/1.1; echo Host: localhost: echo; echo;  
> sleep 10) | telnet localhost 80
> Connected to localhost.
> Escape character is '^]'.
> HTTP/1.1 200 OK
> Date: Wed, 26 Mar 2008 16:39:35 GMT
> Server: Apache/2.2.8 (Unix) mod_ssl/2.2.8 OpenSSL/0.9.7l DAV/2 PHP/ 
> 5.2.5
> Accept-Ranges: bytes
> Transfer-Encoding: chunked
> Content-Type: text/html
>
>
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 1
>
> 2
>
>


Mime
View raw message