【问题标题】:Timed planning Mysql database cleaning定时规划Mysql数据库清理
【发布时间】:2010-05-27 16:05:57
【问题描述】:

我们需要创建一个脚本(ajax 或 php 或 javascript),它会在固定的时间从我们的数据库中清除一些表。

我们不能使用服务器功能,如 Cron 选项卡或其他。

有什么建议吗???谢谢

【问题讨论】:

  • 是关于如何在没有 cron 的情况下启动计划任务或如何清理数据库的问题?
  • Yes 是关于如何在没有 cron 的情况下启动计划任务。

标签: javascript php database time


【解决方案1】:

有一些服务允许您远程安排对指定 URL 的请求(基本上允许另一台服务器在指定时间运行 cron 作业,在可访问 Internet 的服务器上调用脚本),例如SetCronJob.com 等 (Google for "web cron service")。

如果您正在处理无法从 Internet 访问的服务器(即在 LAN 上),那么此解决方案将不适合。

【讨论】:

    【解决方案2】:

    您可以通过将需要运行的任务绑定到另一个由人工交互运行的脚本来完成一个糟糕的 CRON。因此,例如,当 foo.php 完成时,它会调用 cron.php(同步或异步)。要限制 cron.php 实际运行的频率(防止过度运行),您可以存储最后一个时间戳并在一定的时间间隔内进行比较(例如,每 600 秒)。

    当然,这一切都假定有人访问您的网站。

    【讨论】:

      【解决方案3】:

      Javascript,如果您不介意 24x7 全天候打开此网页:在页面加载时使用 setTimeout 以等到一天中稍后的任意时间进行清洁,然后调用 setIntervalsetInterval 最初会调用并定期重复一个 xmlhttprequest 或只是使用 get 或 post 进行页面刷新,以将参数传递给其背后的 PHP 脚本。

      您可能需要考虑将真正的 Cron 作业移动到网络中的另一个系统以远程打开您的 PHP 页面,甚至在需要时将其设置在您自己系统的任务计划程序(如果 Win)或 Cron(如果其他)上.

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多