[Zope] WHY ? -- Performace in serving large media files from ZODB vs from external file system

Toby Dickenson tdickenson@geminidataloggers.com
Fri, 06 Jul 2001 16:59:56 +0100


On Fri, 06 Jul 2001 11:25:30 -0400, marc lindahl <marc@bowery.com>
wrote:

>> From: Toby Dickenson <tdickenson@devmail.geminidataloggers.co.uk>
>>=20
>> The policy used by the default File and Image classes for large
>> content is to spool the content from ZODB into a temporary file as
>> quickly as possible, allowing ZServer to trickle data back to the
>> client as quickly as the client will allow.
>
>I'm not sure I see where that is happening, can you provide some =
pointers?
>It looks to me like File and Image pull  a large (>64KB) file out 64K at=
 a
>time and feed it to RESPONSE, which would be in RAM, not a temp disk =
file...

Look at the implementation of RESPONSE.write in
ZServer/HTTPResponse.py.... It checks to see if the caller has set a
Content-Length http header, and spools chunks onto disk if the total
specified size is large.

Toby Dickenson
tdickenson@geminidataloggers.com