it was before, seems is not now; how can I fix that?
just to be clear, even as I like to discuss a lot, I don't consider myself an expert on this topic (in fact, I don't consider myself an expert on anything but procrastination… but that's another story).
as @smcmahon mentioned in his comment, the site has some specifics and probably should not be used as a guideline; my main idea what to put some thoughts together and make some tests.
feel free to criticize my approach and give more advice.
BTW, @smcmahon @vincentfretin , I was checking the issue on large blob files and I would like to understand what problem are you trying to solve with the usage of collective.xsendfile.
in the Olympics site we served a lot of big ZIP files (around 50-100 MB) containing high resolution photos and we never had any issue on it; as mentioned by Martijn:
serving a blob file is very, very efficient in Zope. The original request thread is closed, and the file streaming is handled entirely by the underlying async polling implementation, Zope / Plone doesn't have to do anything anymore once the blob file has been located.
transferring the file between Zope and the front end web server will be fast (we had that on different machines on the same network, but it was still fast), and then you can cache it so it will never touch the backend on following requests.
at least that's the way it worked for us.