Sina App Engine(SAE)入门教程(10)- Cron(定时任务)使用

参考资料

Cron能干什么?

cron 可以定时的触发一个脚本,在sae上最大的频率是一分钟一次。你可以用其来完成自己需要的业务逻辑,例如定期的抓取某些网页完菜信息的采集,定期的触发一个清理数据库的脚本等等。

Cron怎么用?

Cron作业只能调用应用默认版本的URL,其添加和删除都需要通过代码发布完成。例如你的默认版本是1,那么你在版本2的config.yaml设置的cron将是无效的,不会被执行

操作方法为:编辑 APPNAME/1/config.yaml (APPNAME是你的应用名,1代表版本号),输入cron作业的描述。目前SAE平台支持 使用类自然语言或者unix crontab语言描述cron任务。类自然语言示例:

name: APPNAME
version: 1
accesskey: abc
cron:
    - description: cron test
          url: mycron/test.php
          schedule: $2 day of october 19:00
          timezone: Beijing
    - description: another cron test
          url: mycron/another_test.php
          schedule: every 10 mins
          timezone: Beijing

unix crontab 语法示例:

然后上传应用代码.

以上config.yaml定制了两个cron作业,分别是代码目录mycron/下的test.php和another_test.php。 校时时区是北京时间,而定时分别是每年10月2号的19:00运行和每10分钟运行。

具体使用的实例

在cron目录下创建一个cron.php文件,文件内容为:

<?php
echo "hello lazy!";

设置config.yaml,修改如下:

---
name: lazydemo
version: 1
...
cron:
    - description: cron test for tech
          url: cron/crom.php
          schedule: every 1 mins
          timezone: Beijing

上传代码,那么 此时在sae的管理面板上我们应该就能看到刚才设置的cron了。

时间: 2024-10-12 18:30:41

Sina App Engine(SAE)入门教程(10)- Cron(定时任务)使用的相关文章

Sina App Engine(SAE)入门教程(2)-Mysql使用

如果你还没有SAE的账号,请在http://sae.sina.com.cn 注册新用户.具体的注册流程请参见:Sina App Engine(SAE)入门教程(1)在常规的环境下,我们可以通过http://php.sinaapp.com/manual/zh/ref.mysql.php中PHP的原生函数去操作Mysql,但是由于SAE的环境问题,使用了主从分离技术,因此我们对数据库的操纵做了一次封装,当然你也可以继续使用这种方式去操作mysql.你可以如下使用.首先得到数据库连接的主机名,账号,密

Sina App Engine(SAE)入门教程(8)- SaeFetchurl使用

fetchurl是什么? FetchURL是SAE为开发者提供的分布式网页抓取服务,用来同步的抓取http页面,FetchURL针对国内的网络的做了优化,内部有调度系统,尽可能保证用户快速的抓取到目标页面.在SAE上使用FetchURL非常简单,只需要调用sae_std_lib中的几个简单的函数即可. FetchURL是sae初期不支持curl时的替代方案,现在sae已经完全兼容 curl! fetchurl怎么用? 例如我想抓取百度的网页,那么代码如下: <?php $f = new SaeF

Sina App Engine(SAE)入门教程(3)-KVDB使用

简介 因为传统关系型数据库在分布式环境下表现的扩展性不足等缺点,近年来NoSQL的概念渐渐成为业界关注的焦点,越来越多的技术人员也习惯于使用NoSQL数据库进行日常开发,SAE为了应对这种新需求,也进行了NoSQL方向的研发. KV DB是SAE开发的分布式key-value数据存储服务,用来支持公有云计算平台上的海量key-value存储.KV DB支持的存储容量很大,对每个用户支持100G的存储空间,可支持1,000,000,000条记录,用户可以用KV DB存放简单数据,如好友关系等. 用

Sina App Engine(SAE)入门教程(6)- memcache使用

Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果等.简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度.sae同样提供memcache 缓存服务. 如何开启SAE memcache服务? 注意:我们建议不要开始太大的memcache配额,因按照项目的需要酌情的选择,一般建议不需要开启超过20M. 以下就通过一个小例子和一个综合的例子说明SAE memcac

Sina App Engine(SAE)入门教程(1)

创建应用 在注册完账号之后,需要到 http://sae.sina.com.cn/?m=myapp&a=create创建一个应用. 接着点击应用列表http://sae.sina.com.cn/?m=myapp 选取你刚创建的应用.选择左侧“代码管理”,如下图所示: 创建版本 这时访问你的应用http://1.lazydemo.sinaapp.com/就可以看到: 编辑代码 点击“编辑代码进到在线编辑器”: 在以下红色标示的区域内编辑你的代码就可以使用SAE了. 另一种代码提交方式:SVN 如果

Sina App Engine(SAE)入门教程(4)- SaeVCode(验证码服务)使用

参考资料 SaeVCode api 文档 使用教程 所有的验证码原理都是生成一个vcode字符串,存到session中,和用户的输入进行比较判断,以下是一个使用验证码服务的完整实例: 首页index.html <html> <title>Sae Vcode demo</title> <body> <form action="check.php"> <input type="text" name=&qu

Sina App Engine(SAE)入门教程(7)- Storage使用

参考阅读 sae storage api 文档 Storage 说明文档 Storage 大文件上传说明 storage是什么? 因为sae禁用了代码环境的本地读写,但是在网站运行的过程中,必定会出现文件的读写,附件保存问题,此时就该存取storage出场了,storage代替了常规的upload目录~ 怎么在sae使用storage? 见下面的图示: 输入domain的名字,其他的建议不需要填写,特别是防盗链那块,对于不熟悉的人而言,设置可能导致storage内的资源无法访问,可以等彻底熟悉了

Sina App Engine(SAE)入门教程(9)- SaeMail(邮件)使用

参考资料: SAE mail api 文档 怎么使用? 参见代码: <?php $mail = new SaeMail(); $f = new SaeFetchurl(); $img_data = $f->fetch( 'http://ss7.sinaimg.cn/bmiddle/488efcbbt7b5c4ae51ca6&690' ); $mail->setAttach( array( 'my_photo' => $img_data ) ); $ret = $mail-&

Python Flask 在Sina App Engine (SAE)上安家

早就听说了Python的大名,随着的编程语言的理解加深,越发觉得动态语言的威力--真大呀. 趁这段时间不忙,我也用Python写了一个应用,并且将其部署到Sina App Engine (SAE).SAE确实是一个好地方,它支持Python,对于开发者,其使用费用几乎为0. 更重要的是,如果我的这个app不会半路夭折,等它长大后,这个平台也能给予足够的支持. 虽然,整个过程都很简单,但是对于一个新手,特别是从传统C#, Asp.net, IIS阵营过来的开发人员来说,什么都是第一次接触.希望我的