Rank: Advanced Member Groups: Member
Joined: 8/25/2007 Posts: 34
|
Hi,
Since installing the new EO tools (which I love) I have been having difficulties as we move closer to full production. We have potentially 600 uploads simotaneously at any given time during the mornings and late evenings. We run two applications on this server, and have monitored the process - what we are finding is this. When someone uploads a file it reserves that amount of memory until the file is completely uploaded and saved to the temporary directly. Obviously the root cause of the error is operating system I believe including memory management - but is there any way for the control to write to disk as a file is being uploaded? Or any other solution you can think of?
System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,194
|
Hi Versile,
The uploader actually does write to disk as the file is being uploaded. That's why you need to set TempFileLocation property. It always uses a fixed 5K buffer per upload. There are other things such as maintaining the upload progress information, but that shouldn't cost too much. So 600 concurrent upload for the uploader itself should not be a big deal as far as for memory concerns.
However, 600 concurrent connections is a lot. A web server generally can handle thousands concurrent users but that's a totally different number. Even when there are thousands users using your website at the same time, because each page is served in such a short amount of time, concurrent connection numbers are actually not that high. At any given time, the server might just be severing a few dozens pages at most. Where as with upload, it's a totally different story, all 600 sessions are actively transfering data. So my guess is that the site is simply overloaded, the only way to solve it is either to distribute the load or restrict the number of concurrent upload.
Thanks
|