问题标签 [webcron]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
433 浏览

cron - 如何外包定期任务(即在“云”中)?

假设客户对您创建脚本以完成收集一些信息并输出大量数据库文件的任务所做的工作感到满意。然后,他们有兴趣让任务在没有人工干预的情况下定期(大约每月)运行。客户对在本地运行任务不感兴趣,因此您不得不寻找其他地方来完成它——在某个地方,尽管听起来很古怪,“在云中”。

您将使用哪些技术/服务来廉价地完成此任务?

到目前为止我探索过的事情:

  • 亚马逊 EC2。听起来是个好主意,但没有明显的方法可以按计划停止和重新启动实例。每月支付超过 70 美元来保持实例运行 cron 但没有做任何有用的事情似乎是一种浪费。
  • 咬紧牙关,为虚拟专用服务器 (VPS) 付费。但是,如果该任务每个月只运行几个小时,即使每月支付 20 美元(例如Slicehost)似乎也有点过头了。
  • 共享主机帐户和WebCron。似乎有点 MacGyverish 并且可能违反了许多共享托管服务的 ToS,这些服务通常不适合长时间运行的任务。

你有这些或任何其他选择的经验吗?

0 投票
0 回答
68 浏览

cakephp - webcron 认证网站 cakephp

在我的网站 CakePHP 网站上,我有一个操作允许我进行处理,然后通过转到特定 URL 发送电子邮件:www.example.com/Users/doFacture/true

我想创建一个每月自动转到该 URL 一次的计划任务。问题是要访问它,我需要对自己进行身份验证。所以我尝试了以下脚本:

但它不起作用,当我收到计划任务的报告时,我有这个:

任务计划程序已完成计划任务。

任务: EMAIL 首次亮相时间:周日,2017 年 3 月 26 日 23:49:23 GMT 时间:周日,2017 年 3 月 26 日 23:49:25 GMT 23:49:23-- www.example.com/identification 解析 www.example.com... xx.xx.xxx.169 连接到 [ http://www.example.com|xx.xx.xxx.169 ...xx.xxx.169|:80 ...已连接。已发送 HTTP 请求,等待响应... 200 OK 长度:未指定 [text/html] 保存到:'identification.6'

0K .... 16.2M=0.001s

2017-03-26 23:49:24 (16.2 MB/s) - 'identification.6' 已保存 [9376]

--2017-03-26 23:49:24-- hwww.example.com/Users/doFacture/true Resolvingwww.example.com... xx.xx.xxx.169 连接到 [ http://www.example .com|xx.xx.xxx.169...xx.xxx.169|:80 ... 已连接。HTTP 请求已发送,等待响应... 302 找到位置:www.example.com/identification [以下] --2017-03-26 23:49:24-- www.example.com/identification 重用与 www 的现有连接。示例.com:80。HTTP 请求已发送,等待响应... 200 OK 长度:3044 (3.0K) [text/html] 保存到:'www.example.com/Users/doFacture/true'

0K .. 100% 60.3M=0s

一切似乎都很好......但我从未收到以下网址应该发送给我的邮件:www.example.com/Users/doFacture/true

当然,当我通过我的资源管理器并进行身份验证然后转到该地址时,它就可以工作。

你有想法吗 ?是否可以/建议使用 curl?

提前致谢;