SlickUpload Overview
SlickUpload is an ASP.NET HttpModule that provides scalable upload handling for ASP.NET applications.
ASP.NET doesn't have any capacity to stream requests to disk, and thus will load an entire upload into
memory before processing it. This can cause scalability problems, as well as opening up a possible
vulnerability to a denial of service (DOS) attack. SlickUpload fixes these problems by intercepting
the request before the ASP.NET page processing engine gets it, and streaming it in chunks directly to
disk or to a database. This eliminates the problem of loading the request into memory. SlickUpload
also provides rich progress and status information during the upload process, allowing an application
to display upload status to the user in real time.
Benefits
SlickUpload was designed with several goals in mind:
Scalability and Performance
By streaming uploads directly to an output stream in chunks, rather than loading them into memory,
SlickUpload achieves a level of scalability and performance impossible to reach with ASP.NET's
built-in functionality.
Flexibility
SlickUpload allows you to direct an upload to its final destination as it is being uploaded, whether
that be a file or a record in a database, rather than requiring you to write to a file first and
then manually move data around.
Ease of use
SlickUpload is a drop-in component with minimal coding required to do most tasks. For complex tasks,
SlickUpload has the depth of functionality required.
Rich end-user experience
Because the upload is integrated with a progress information service, SlickUpload is able to provide
an end user with detailed data about where he is in the upload process and how long it will take
to complete it.
© 2006 Krystalware
|