0

我正在监视一个网站(使用 curl)以查看它是否已启动并了解主页上简单 GET 请求的响应时间。我正在使用自制脚本来执行此操作,并且我不想为此使用 Nagios 或任何其他现有工具。

我的问题是我不知道如何长时间(比如几个月)存储结果。我当然不需要自纪元以来的每个请求的响应时间,但我想获得状态(向上|向下)和大部分时间的平均响应时间。例如 :

  1. [上个月] -> 每日响应时间(平均)
  2. [过去 3 个月] -> 每周响应时间(平均)
  3. [过去 12 个月] -> 每月响应时间(平均)

在整个期间,我想保持状态。为此,我猜我只会保存状态更改发生的最后日期。

所以问题是:以这种频率/保留率存储此类信息的最佳方式是什么?我正在用 PHP 编码,后面有一个 Mysql DB,但也许有比 DB 更好的东西吗?

接受任何语言/技术,只要它是免费的并且在 linux/unix 上运行。

谢谢

4

2 回答 2

1

将每个请求保存到 DB 表和 calcualte daily response time (avg)weekly response time (avg)monthly response time (avg)编写简单的 PHP 函数。

如果您只存储响应时间和请求日期,您的表将不会快速增长,并且使用正确的索引将快速运行。

于 2012-08-23T06:53:15.713 回答
1

这听起来像是一个典型的循环数据库。RRDtool允许您管理这样的数据库。我看不出重新发明轮子的理由。

于 2012-08-23T07:00:15.700 回答