0

我的网站显然变得非常缓慢,目前只有大约 20 人从我的网站下载。我的网站提供了大约 100MB 的大文件供下载,所以这 20 个人目前正在从中下载。

当足够多的人在下载时,网站变得无法访问,基本上当我尝试浏览页面时,它加载了很长时间才出现。我在下面做

FileLocation fl = _store.GetFileLocation(id);
if (fl == null) return;
if (System.IO.File.Exists(fl.Location) == false) return;
RangeDownloader rd = new RangeDownloader(fl.Location, new FileInfo(fl.Location));
rd.ProcessRequest(System.Web.HttpContext.Current); 

RangeDownloader 类基本上是一个允许范围下载(多部分/多部分)的类。

我在这里做错什么了吗?我必须使用单独的线程来提供下载,这意味着我使用 ThreadStart 吗?对网站的每个请求不是一个单独的过程吗?我真的需要使用线程吗?从我的共享主机计划中下载 20 个人是否被视为繁重?

4

1 回答 1

0

我找到了答案,FIleContent 不会减慢 ASP.NET 池的速度,但是它会消耗进程,当太多用户点击同一个文件时,服务器可能会变慢,这也发生在其他 Web 服务器中。

于 2012-12-29T14:08:42.207 回答