The Forums on slxdeveloper.com are now retired. The forum archive will remain available for the time being. Thank you for your participation on slxdeveloper.com!
|
|
Are there any Attachment Limits?
Posted: 30 Nov 09 12:08 PM
|
We've got a user complaining that they can't upload a 45MB file and that they should be warned before it times out and you get a standard runtime error message. However, to my knowledge and limited experience no such limit exists. I'm more inclined to believe that the problem is caused by network conditions preventing the file being uploaded before the connection times out.
Does anyone know if there is a set limit and how best to enforce that?
Does anyone have any advice on how to improve the performance of the Attachment service?
Ta very much! |
|
|
|
Re: Are there any Attachment Limits?
Posted: 30 Nov 09 2:41 PM
|
There are indeed several limits built into SLX, IIS and ASP.Net that would cause trouble with file uploads.
First of all, there is a default max size for the uploads, I recall it being about 2MB. You also have the MaxRequestAllowedSize on IIS, and depending on the Connection speed, you will also have to deal with connection time outs. For instance, after making several changes to allow an upload of up to 2 Gigs, I was able to succesfully upload a file of about 40MBs, but there were some users still complaining on a file of about 8MBs, and it was because when introduced his connection speed into the Mix, it was taking much longer than from my end to upload, so it was hitting the Timeout barrier.
|
|
|
|
Re: Are there any Attachment Limits?
Posted: 01 Dec 09 6:23 AM
|
Thanks for the information. I hadn't considered the limits on IIS and wasn't aware of the limits in SLX.
What settings do I need to adjust to maximise the ability to upload large attachments (on SLX and IIS)? For instance, how did you set up your system to allow uploads of up to 2GB? |
|
|
|
Re: Are there any Attachment Limits?
Posted: 01 Dec 09 8:14 AM
|
Just to add, I've run into this issue with several times. It is NOT limited to an SLX issue. I'm sure Raul will get back with his solution, but I'll look around to see if I can find the IIS/ASP.Net changes that I've used before.
In one example that comes to mind, we actually implemented what I would call a "keep alive" that was specifically for dealing with large uploads. It utilized ajax to keep the connection going so that the time out was never triggered. |
|
|
|
Re: Are there any Attachment Limits?
Posted: 01 Dec 09 9:09 AM
|
Originally posted by Trent Haynes
Just to add, I've run into this issue with several times. It is NOT limited to an SLX issue. I'm sure Raul will get back with his solution, but I'll look around to see if I can find the IIS/ASP.Net changes that I've used before.
In one example that comes to mind, we actually implemented what I would call a "keep alive" that was specifically for dealing with large uploads. It utilized ajax to keep the connection going so that the time out was never triggered. |
|
Trent: You are wrong here, there are limits set on the Web.config inside SLX.
On the SLX Web.Config check the httpRumtime entry. You need to pay attention to 2 items there: - maxRequestLength: Default value = 4096 (4MB). - executionTimeout: Default value = 90 seconds You want to increase the size here, as well as the timeout to ensure that you allocate enough time before the request is timed out while uploading. * Make this changes on the App Architect to make sure that they don't get lost upon a new Deployment.
At the IIS level, you would need to look into AspMaxRequestEntityAllowed, I believe the default value is 2MB. |
|
|
| |
|
Re: Are there any Attachment Limits?
Posted: 01 Dec 09 9:14 AM
|
The httpRuntime on the Web Config will overrride the ASP.Net option from the machine.config (or a higher level web.config), however the IIS value is parallel, so you need to make sure you address it as well. |
|
|
| |
|
Re: Are there any Attachment Limits?
Posted: 01 Dec 09 9:21 AM
|
I wasn't paying much attention to that sentence, but yes, it is not limited to SLX, it is an issue with running any kind of Web Server.
This is not an isolated problem to SLX. In this case, this is an IIS/ASP issue that you need to be aware of as either a programmer or an Web Server Engineer. It affects no just the attachments upload on the Web UI (using the RadUpload control), but also attachments added from Emails via the "Send SLX" feature, and would affect any other type of upload that you build in code (as an example, I had built an integration in the past that streamed Blob data up and down from a Web Server. It worked fine until it reached the IIS limits, so I had to reconfigure the IIS web servers).
|
|
|
|
Re: Are there any Attachment Limits?
Posted: 01 Dec 09 9:58 AM
|
Thanks both for the information. I love the fact that I'm still learning!! I had no idea that ASP had this issue or that it was so relatively easy to address!
I'll do some playing around with all those settings and see what happens.
Originally posted by Trent Haynes
Just to add, I've run into this issue with several times. It is NOT limited to an SLX issue. I'm sure Raul will get back with his solution, but I'll look around to see if I can find the IIS/ASP.Net changes that I've used before.
In one example that comes to mind, we actually implemented what I would call a "keep alive" that was specifically for dealing with large uploads. It utilized ajax to keep the connection going so that the time out was never triggered. |
|
Trent, I'd love to hear more about the keep alive, in case we need more than just the ASP fixes. Presumably changing the timeout setting will have some negative aspect, otherwise people would always set it really high? |
|
|
|
Re: Are there any Attachment Limits?
Posted: 02 Dec 09 8:04 AM
|
Keep in mind, that the solution we implemented was not part of an SLX implementation. That said, I don't see why you couldn't adapt it for your use.
Better news is that this topic has come a long way since we first did it (in 2006). There are even dedicated controls available now.
Here is a good look at the topic:
http://weblogs.asp.net/jgalloway/archive/2008/01/08/large-file-uploads-in-asp-net.aspx
Also, as far as the timeout and size issue - remember that any file that is uploaded is by default handled in memory by the webserver (unless you specifically handle it otherwise). So it is just an additional load. Also, if I remember correctly (it's been a while), another issue with the timeout is apparent responsiveness. If you set the timeout very high, file upload isn't the only thing affected.
Check out the link above, it offers a far better distillation of the topic and offers many current solutions. |
|
|
| |
|