httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Graham Leggett" <minf...@sharp.fm>
Subject Re: svn commit: r468373 - in /httpd/httpd/trunk: CHANGES modules/cache/mod_cache.c modules/cache/mod_cache.h modules/cache/mod_disk_cache.c modules/cache/mod_disk_cache.h modules/cache/mod_mem_cache.c
Date Fri, 27 Oct 2006 15:05:29 GMT
On Fri, October 27, 2006 4:38 pm, Davi Arnaut wrote:

> Where is pdconf ? Check out all those APR_HAS_SENDFILE.

Aaargh... will fix.

> Those "if(" and "if (" are going on my nerves! :)

Damn, missed some.

> Swapping the metadata check would make the code much more readable:
>
> if (is_metadata)
> 	deal with it
> 	continue
>
> handle normal bucket

Cool. I also need to handle flush buckets as well.

> Err. We had the data in memory, we are going to read it back from disk
> again just in order to not block ? That's nonsense.

Yep, we have the data in memory. Now we have it on disk, and the memory
can be used for something else while the extremely slow client consumes
the download.

Don't forget, the cache is supposed to improve performance, and the
entities being cached could be large and expensive, like CGIs or mod_perl,
etc. The sooner their work is done and their memory cleared the better.

> We don't need a special bucket type!
>
> Also, are you really sure you are tracking correctly all those buckets
> with the correct offset ? The file pointer offset is unique for a single
> fd.

So far in testing with 1.5GB files, yes. Downloaded files, cached files,
original files all cmp the same.

I tried a normal file bucket type and it didn't work, as it kept closing
the underlying fd, while using the special type as contributed by Niklas
it did work. Niklas has obviously found and fixed this issue, so I didn't
pursue it further.

Regards,
Graham
--



Mime
View raw message