【问题标题】:Need to check uptime on a large file being hosted需要检查托管的大文件的正常运行时间
【发布时间】:2010-03-22 20:40:01
【问题描述】:

我有一个动态生成的 RSS 提要,大小约为 150M(不要问)
问题是它会偶尔出现问题,如果不下载整个提要以获得 200 状态,就无法对其进行监控。 Pingdom 超时并返回“关闭”错误。

所以我的问题是,我如何检查这个东西是否已启动并运行

【问题讨论】:

  • 谢谢鱼子。这有帮助。

标签: http monitoring uptime


【解决方案1】:

您使用的是什么类型的网络服务器和服务器端编码平台(如果有)?是否有任何内容来自后端系统/数据库到 Web 层?

您确定问题不在于访问文件的客户端代码吗?大多数客户端都有超时,通过 Internet 下载大文件可能会成为问题,具体取决于服务器的行为方式。这就是文件下载实用程序跟踪进度并分块下载的原因。

Web 服务器上的其他负载或用户数量也可能影响服务器。如果您的可用内存很少并且某些服务器,那么它可能无法将这种大小的文件提供给许多用户。您应该查看服务器如何发送文件并确保它正在分块。

我建议您执行 HEAD 请求以检查 URL 是否可访问以及服务器是否至少响应。下一步可能是在托管文件的数据中心内部或非常靠近的地方设置下载测试以进一步监控。这可能会降低成本并减少干扰。

【讨论】:

  • 只是一个简单的 php 脚本......数据全部来自 mysql 数据库。我不控制脚本,但我需要能够证明它的废话
  • 似乎 pingdom 也已经在使用 HTTP HEAD 请求了,uptime.pingdom.com/general/methodology ... 不明白为什么它在收到响应时会超时。
【解决方案2】:

找到了一个可以满足我需要的在线工具
http://wasitup.com 使用头部请求,因此它不会在等待下载整个 150MB 文件时超时。
感谢 BrianLy 的帮助!

【讨论】:

    【解决方案3】:

    看起来 pingdom 不支持 head 请求。我已经提出了功能请求,但谁知道呢。

    我暂时将此功能破解到mon 中(mon 是在花钱请别人监控和自己做所有事情之间的一个很好的折衷方案)。我已经完全切换到 https,所以我修改了 https 监视器来做到这一点。这样做的方式非常简单:复制了 https.monitor 文件,将其命名为 https.head.monitor。在新的监视器文件中,我更改了以下内容(您可能还想更新函数名称和调用位置):

    get_httpshead_https

    现在在 mon.cf 中,您可以调用 head 请求:

    monitor https.head.monitor -u /path/to/file
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-15
      • 1970-01-01
      • 1970-01-01
      • 2021-09-12
      • 1970-01-01
      • 1970-01-01
      • 2017-11-04
      • 1970-01-01
      相关资源
      最近更新 更多