如何进行分布式网站监控?

我想知道以下网站如何执行分布式网站监控(从多个检查站/国家)。

pingdom.com,site24x7.com,uptrends.com,siteuptime.com等等。

确切地说,在检查一个给定的域名是否失效时将会发生什么过程? 如果服务器发现该网站已closures,下一步是什么? 它是否会向另一台服务器发出REST API请求以运行相同的testing并报告结果?

我有几个理论,包括:

  • 利用来自不同国家的主机
  • 利用来自不同国家的代理

我正在寻找最适当或正确的方式来处理这个问题,其中可以包括来自多个国家/地区的服务器的使用情况。

绝大多数这将是执行依赖。 例如,每个提供商如何实施内部通信取决于他们。 也许REST,也许XMLRPC,也许Pyro,等等。

从functionangular度来看,它们看起来好像处理起来有些不同。 Watchmouse似乎随机抓取了一台可用的testing仪,并在其configuration好的节点上运行一个testing,这个testing恰好在地理上是分散的。 其他人似乎分配到一个地理位置。

“最正确”的方式是相对的,取决于你想要监视的。 你想要监控什么,国际检查对你来说有多重要? 如果加拿大的考试速度很快,乌克兰的考试很慢,你能做些什么吗?

如果我亲自做,我会有远程轮询节点向集中收集器报告数据整理,但警报将从边缘系统,以加快速度。

尽pipe如此,一切取决于你想要做什么。 HTH。

理想情况下,您希望全球分散的客户端计算机运行您想要的任何types的检查。 我猜你只是想知道该网站是否可以通过简单的GET进行检查。 使用代理可以做到这一点,但是您还需要确定它是否是网站或没有响应的代理。 如果您使用多个代理,这应该很容易。

取决于networking服务器端的自动化程度,至less在某种程度上决定了如何使用监视系统的结果。 正如我所看到的,基本的系统会是这样的:

  • 定期检查网站(5分钟?),看看他们是否起来
  • 一个没有回应的网站会每半分钟重新检查一次,并为该网站增加一个检查计数器
  • 如果站点响应,则检查时间和失败计数器被重置
  • 如果站点在X次重试之后没有响应,则发送警报,并且如果可能的话,重新启动服务和/或服务器