> To add, uploading a 300mb file does not mean that 300mb of 
> RAM is used! If that was the case there would be no such 
> things as enterprise CMS tool - "ooh I'm sorry you cannot 
> upload an image to the CMS, someone else is.."
> 
> A file is just uploaded by http/ftp - bit by bit. IIS does 
> not hold it in memory per se. 

There are two problems with this analysis. First, most enterprise CMSs will
choke on 300 MB image file uploads. Second, IIS doesn't have anything to do
with this, as far as I can tell. CF integrates with IIS 5 through an ISAPI
filter and an ISAPI extension, and with IIS 6 through an ISAPI wildcard
extension. I'm not fully up on IIS 6 ISAPI, but with IIS 5 at least, a
filter processes the request before IIS does anything. The filter code is
entirely written by MM folks.

So the real question is, does CF hold the entire HTTP POST request body in
memory before writing to disk, or does it create a memory-mapped file when
it receives a large enough POST. I don't know the answer to this question
offhand, but maybe someone else does.

> It is not held in memory of the server - that would be 
> utterly pointless and unworkable.

I would argue that allowing HTTP POSTs of 300+ MB is utterly pointless and
unworkable, for what that's worth.

> Look at it this way - I you download a file to your HD which 
> is 1GB and you only have 500mb of RAM does your download fail? 
> Of course not, it is not based on memory.

You are relying on common sense, which is a big mistake. I wouldn't be at
all surprised if HTTP POSTs are stored in memory rather than in the
filesystem. Writing a program which handles different HTTP POSTs differently
is more difficult than writing one which works the same way no matter what.
Browsers, on the other hand, write every file they download to the
filesystem, so it makes sense that they would handle large file downloads
the same as small file downloads. But in any case, you shouldn't make
assumptions about this sort of stuff, because common sense rarely applies in
these cases.

Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/

Fig Leaf Software provides the highest caliber vendor-authorized 
instruction at our training centers in Washington DC, Atlanta, 
Chicago, Baltimore, Northern Virginia, or on-site at your location. 
Visit http://training.figleaf.com/ for more information!


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Discover CFTicket - The leading ColdFusion Help Desk and Trouble 
Ticket application

http://www.houseoffusion.com/banners/view.cfm?bannerid=48

Message: http://www.houseoffusion.com/lists.cfm/link=i:10:5755
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/10
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:10
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.10
Donations & Support: http://www.houseoffusion.com/tiny.cfm/54

Reply via email to