[Zope-PTK] Feasibility of using Zope for this project.

Helge Tesdal tesdal@localhost.localdomain
Sun, 4 Jun 2000 14:22:43 +0200 (CEST)


On Sat, 3 Jun 2000, Dave Marchette wrote:

> Here is what I am trying to do.  Is this a bad idea.
> 
> 1  Using the ptk\zope combo to manage around 1 gig of file I\O per day.
> Average file size is 2 meg.  Minimal hits but large file transfers.  Files
> are large AND dense, MP2 and MP 3, and the occasional wave.

We had problems uploading the files over slow connections. ZServer would
raise an exception and abort the upload. The problem went away when we ran
Zope with Apache and FastCGI, but it never worked with ZServer, and no one
had any suggestions on how to fix it.
Zope 2.2 will have improved handling of large files.


> 2 Will use localFS for around half of the file I\O from the server.

This didn't work very well for us, as Zope had to read the whole file from
disk before it was sent to the browser. I had to wait 10 seconds or so
before the download started, numbers will probably get worse if
there are more than one user.

> Hesitations:
> 
> 1  Can't figure out how to make any of the upload functions show a progress
> indication.  All I get is "web site found waiting for reply..."  Still seems
> to work for small files (2 meg) but times out on big ones...say 20 meg +,
> right from a local connection.  And large files take a very long
> time....like 5 times as long as they would using ftp server.

I don't know of anyone using progress bars for upload, if you come up with
a good solution, I'd like to hear about it. :)

Currently we're just saying it will take a long time, but as long as the
browser icon is spinning, things are probably ok.

I think the FTP protocol is more efficient for transferring files, but it
shouldn't be as much as 5 times I think.

I get the impression that Zope doesn't handle big files well at all. We
went for a solution where files are uploaded through Zope, then stored on
the filesystem. When downloading, Zope computes the URL of the file, and
it's served through Apache. An added bonus is that the download server can
be placed wherever you want it to, and you could also have several
download servers for load balancing if you feel like it. Just pick your
favourite webserver for your platform, and run it on a free port. Zope is
good at dynamic content, Apache, IIS, Zeus, Roxen are all very good at
serving static files.

Hope this helps.

--
Helge