如何在每X分钟运行我的PHP代码?

时间:2010-05-19 11:30:44

标签: php ajax

我尝试为我们的小型网络制作一个“状态监视器”。页面加载后,我为我添加的每个IP进行ping操作。没关系。但我想每隔X分钟执行此ping操作,而无需重新加载我的漏洞页面。

如果我使用标题刷新重新加载页面,我可以制作它,但我想在重新加载时这样做。

我想我必须用AJAX做到这一点?,但我不知道怎么做..

谢谢

5 个答案:

答案 0 :(得分:2)

我强烈建议您查看Nagios或类似内容:

1)您不需要经常打开网页来检测问题

2)它可以自动验证和升级问题

3)开箱即用的探针很多,可用于测量各种事物 - 不仅仅是ping时间

4)响应ping与工作

不同

5)它会自动整理统计数据以识别问题模式

6)它还提供SLA类型报告

7)Nagios很简单,即使我能理解它

8)经过大量工作研究替换类似你所建议的系统后,我选择了它。

HTH

下进行。

答案 1 :(得分:2)

如果是整个页面代码我建议设置一个cron作业

如果你想使用ajax(即jquery ajax有一个名为jquery timer的插件),请使用它向你要运行的代码发送ajax请求。

http://plugins.jquery.com/project/timers 看看这个

答案 2 :(得分:1)

我建议你看看一些“其他方式”的方法,比如COMET,here是一篇有趣的文章,涵盖PHP的基本用法。

这会将“ping”的实现放在您的服务器而不是客户端。

例如,您可以设置固定间隔,而不是随意推出更新。这意味着您将获得几乎实时的状态通知,而不是固定的间隔更新。

  

在网络开发中,Comet是一个   描述网络的新词   应用模型中长期持有   HTTP请求允许Web服务器   将数据推送到浏览器,没有   浏览器明确请求它。   彗星是多重的总称   实现这一目标的技术   相互作用。所有这些方法都依赖于   默认包含的功能   浏览器,比如JavaScript   比非默认插件。

COMET (Wikipedia)

答案 3 :(得分:1)

你为什么不尝试一个cron?

答案 4 :(得分:0)

我不确定你想在这里做什么,但是这个quick tutorial向你展示了如何每秒调用一个php文件并用结果更新dib块。使用jquery可以快速而简单。