[Zope-dev] Serving large files
Jim Fulton
jim at zope.com
Mon Sep 18 07:38:00 EDT 2006
On Sep 17, 2006, at 3:09 PM, Sidnei da Silva wrote:
> I remember having a conversation with Jim at some point where he
> proposed a strategy for requests that could potentially take a long
> time to finish. If I recall correctly, he proposed having a separate
> ZODB connection pool.
>
> One thing that is problematic today is serving large files
> from the ZODB (ignoring the upcoming blob support).
Why would you ignore that?
...
> b) If you dump the data to a temp file and return that as a file
> iterator, it can potentially take twice the time.
OK, so?
> c) If you use RESPONSE.write() you can break other
> applications. ExternalEditor comes to mind.
I wasn't aware that it would break RESPONSE.write, but, in any
case, this will cause a tempirary file to be created.
...
> I would like to be able to return an iterator that can read from the
> ZODB. That would probably benefit the WSGI integration as well. Anyone
> has ideas about how to solve this?
You could create an entirely new server with different thread-management
semantics. You could probably do this with the normal Zope publisher
using
one of the standard threading WSGI servers,
Or you could use a temporary file or wait for blobs.
Jim
--
Jim Fulton mailto:jim at zope.com Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
More information about the Zope-Dev
mailing list