【问题标题】:connections dropped连接断开
【发布时间】:2009-10-27 00:15:22
【问题描述】:

我在 CentOS 版本 5.2 上使用 lighttp 1.5。该网站是一个免费的图片网站,允许用户下载文件。每个文件大约 3-6MB。下载脚本是一个php脚本,长这样。

 set_time_limit(0);
 //...

 header( "Content-Disposition: attachment; filename=\"" . $title . '"' );
 header( "Content-type: image/jpeg");
 header( "Content-Length: " . filesize($file));
 header( "X-LIGHTTPD-send-file: " . $file);

问题的描述是我一次下载 5 或 6 个不同的文件。其中一个文件以 1/2 的速度通过,将开始每秒丢失 k/秒,直到它达到“以每秒 1k 的速度下载”,然后它就退出了。图像永远不会完全到达。我重试并下载图像,即使需要 5 分钟,它也能正常下载。很多用户都在报告这个问题,我在高峰时间注意到了这个问题。 Ping 显示非常低的丢包率。任何人都知道为什么连接会断开?是轻的还是网络的?任何帮助将不胜感激。

【问题讨论】:

    标签: php download x-sendfile


    【解决方案1】:

    毫无疑问,逐渐下降的传输率只是您的浏览器试图让您获得有用信息的产物。事实上,下载会停止并且永远不会恢复。这可能是有原因的,但很可能源站点只是超载并且将您的下载扔到了公共汽车下。需要注意的是,除了寻找更可靠的合作伙伴之外,您还能做些什么。

    【讨论】:

    • 有没有办法减少下载量?是网络还是服务器?继续找一家新的托管公司是不可行的,我可以要求更大的连接或更多的资源。
    • 有时你得到你所支付的 - 免费网站值得你付出的每一分钱。问题真的可能在任何地方。如果您考虑一下,在主机和您的计算机之间移动数据会涉及数十甚至数百台不同的计算机。在所有这些机器中,对任何困难的默认响应是放弃并假设客户端会重试。最可能的问题是主机内存不足或其他一些稀缺资源,并通过终止需要不可用的进程来恢复。
    猜你喜欢
    • 2012-03-14
    • 1970-01-01
    • 2014-07-17
    • 2016-11-13
    • 2016-08-21
    • 1970-01-01
    • 2016-08-26
    • 2011-10-11
    • 2016-11-15
    相关资源
    最近更新 更多