首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建没有Cron作业的调度任务

创建没有Cron作业的调度任务
EN

Stack Overflow用户
提问于 2014-04-12 09:51:07
回答 5查看 26.7K关注 0票数 4

需要创建计划任务,但不可能使用Cron作业(主机提供商警告说,“在45分钟内多次运行cron作业违反了他们的规则,可能导致帐户关闭”。

php (从txt插入数据到mysql数据库)应该每分钟执行一次(这个链接应该称为http://www.myserver.com/ImportCumulusFile.php?type=dayfile&key=letmein&table=Dayfile&file=./data/Jan10log.txt )。

还有别的办法吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-04-12 10:14:27

重复工作有多种方法。我现在可以考虑的一些方法是:

  1. 使用:https://www.setcronjob.com/

使用像这样的外部站点,以设定时间间隔启动url。

  1. 使用元刷新。更多的这里。你必须打开页面,让它继续运行。
  2. Javascript/Ajax刷新类似于上面的例子。
  3. 安排一项任务。大多数共享主机确实提供了一种设置cron作业的方法。看看您的主机的cPanel。
票数 7
EN

Stack Overflow用户

发布于 2014-04-12 09:59:21

如果您拥有shell访问权限,则可以通过shell执行php脚本。

类似这样的循环将是一个没完没了的循环,它会休眠60秒,执行、收集垃圾并一直重复到时间的尽头。

代码语言:javascript
复制
while(true) {
    sleep(60);
    //script here


    //end your script
}

或者,您可以使用ajax或元刷新来执行“可怜的cron”。我以前也做过。基本上,您只需使用javascript或html的元刷新来重定向脚本。从浏览器中访问此脚本,只需打开它即可。它每60秒就会刷新一次,就像一次任人唯亲。

还有一种替代cronjob的方法是bash脚本,如:

代码语言:javascript
复制
#!/bin/bash
while :

do
sleep 60
 wget http://127.0.0.1/path/to/cronjob.php -O Temp --delete-after

done

所有这些话,你可能会被主机抓住,并被终止无论如何。

所以你最好的解决方案:

去注册一个月5-10美元的up,并向共享主机和运行自己的小服务器说再见。

如果您这样做,您甚至可以停止使用糟糕的php,转而使用facebook的hhvm,并享受其出色的性能。

票数 4
EN

Stack Overflow用户

发布于 2016-11-03 08:02:41

有免费服务

http://cron-job.org

这让你有了一个很好的选择。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23028783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档