我的ASP.NET应用程序允许用户上传和下载大文件。这两个过程涉及读取和写入文件流。我应该怎么做才能确保应用程序在处理大文件时不会挂起或崩溃?应该在工作线程上处理文件操作?在ASP.NET中处理大文件传输时,应该采取哪些预防措施?
1
A
回答
1
确保正确地缓冲文件,以便它们不会占用系统中过多的内存。
例如摘自下载应用程序,在读取文件的while循环中:
// Read the data in buffer.
length = iStream.Read(buffer, 0, bufferSize);
// Write the data to the current output stream.
Response.OutputStream.Write(buffer, 0, length);
其中,bufferSize是合理的, 100000字节,折衷是对于较小的缓冲区大小会更慢。
http://support.microsoft.com/kb/812406
编辑:另外要确保IIS设置采取足够request length(IIS7)和超时大。
0
除非这是您网站的主要用途,否则请考虑将这些操作分配到单独的应用程序,例如,一个子应用程序或子域。除了降低风险之外,随着用户群的增长,这也将简化扩展。
相关问题
- 1. LAMP应用程序在初始化时应该采取哪些预防措施?
- 2. 处理生产数据时需要采取哪些预防措施?
- 3. 我应该采取哪些措施来防止SQL注入?
- 4. 我应该采取哪些安全措施来防止下载我的文档?
- 5. 信用卡信息,必须采取哪些安全预防措施?
- 6. 在标准MVC4项目中更改Jquery版本时需要采取哪些预防措施?
- 7. 我应该采取哪些措施来保护我的Google Maps API密钥?
- 8. 开发ajax驱动应用程序时应采取哪些安全措施?
- 9. SQL注入预防:最大的措施
- 10. 我应该采取措施防止从CreateProcessWithLogonW调用中读取密码吗?
- 11. Angular2子路由重定向采取预防措施
- 12. 如果编写病毒需要采取什么预防措施
- 13. 我让客户端将JavaScript添加到网页之前应采取哪些预防措施?
- 14. 我应该采取什么措施排查testdriven.net安装问题?
- 15. 如果模块无法加载,应该采取什么措施
- 16. 如何在Eclipse中采取某些措施?
- 17. 如何通知运行libevent的线程应该采取一些措施?
- 18. 可以采用哪些SQL Server 05/08安全措施来防止SQL注入?
- 19. 我应该采取什么样的安全预防措施来“联系我们”表单?
- 20. 我应该采取什么预防措施来阻止用户提交的HTML上的XSS?
- 21. 您采取了哪些措施来消除Rails开发中的错误?
- 22. 警报措施处理
- 23. 的安全预防措施与AJAX
- 24. GWT干扰XSS预防措施
- 25. 应该采取什么措施来避免传出的电子邮件被传递给垃圾邮件
- 26. 如何在iOS中收到短信时采取措施?
- 27. 的LINQ采取措施,通过收集
- 28. specs2-对测试失败采取措施
- 29. 如何采取措施关闭NSPopover?
- 30. ASP.NET MVC预防措施重定向与AJAX