PHP Laravel5.3 定时给APP推送消息

服务器:Ubuntu(14.04) 

      我们要实现定时给APP推送消息,靠PHP是不行的(当然,如果你想用死循环来实现,当我没说),所以我们要实现定时推送,那么个人觉得Linux的cron是一个不错的选择。

      cron,是一个Linux定时执行工具,可以在无需人工干预的情况下运行作业。在Ubuntu9.1往上cron是被默认安装的,所以我们不需要再去安装cron

配置文件目录:/var/spool/cron/crontabs/,具体的配置方法网上有很多,这里就不阐述了,笔者的配置是laravel官网给的

*/1 * * * * php  /home/wwwroot/www.example.com/laravel/artisan schedule:run >> /dev/null 2>&1(1分钟执行一次)

但是第一次千万要使用 crontab -e 来配置任务调度,要不然你会遇到不可预估的错误,第一次配置完成后提示:crontab: installing new crontab就说明配置成功了。如果不成功,请先去/etc/rsyslog.d/50-default.conf这个文件里面把 cron.* /var/log/cron.log #将cron前面的注释符去掉,然后重启rsyslog的服务:service rsyslog restart。然后就可以去查询日志,看到底是哪有问题了。

然后配置成功后,我们来到laravel的app/Console/Kernel.php中,这里laravel已经把方法都定义好了,我们无需再定义方法,只需方面里面调用我们要想执行的方法,比如消息推送类


调用两个主要的消息方法

笔者这里把用户自定义的提醒消息和系统的分开了,大家可根据实际情况再去调用,建议先去看看laravel官网文档,文档上面还阐述了可以三分钟,五分钟,以及1天,这样我们就只需在服务器端配置一条命令,而不用再配置那么多。这里给出5.3的中文任务调度的文档地址:http://laravelacademy.org/post/6228.html。

常用命令和文件位置

cron日志文件:var/log/cron.log

crontab配置文件:/var/spool/cron/crontabs/

重启cron服务:service cron restart

这里只提供一个思路,具体的做法和还需要大家自己去实现,笔者也提前祝大家新年快乐~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 简书不维护了,欢迎关注我的知乎:波罗学的个人主页 原文地址 此篇技术博文主要介绍的是crontab,Linux下的...
    波罗学的草稿阅读 6,052评论 0 13
  • Linux定时任务Crontab命令详解 linux 系统则是由 cron (crond) 这个系统服务来控制的。...
    孙燕超阅读 1,848评论 0 4
  • 简介:Crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。本课程通过对Cron...
    Amisuer阅读 4,740评论 0 1
  • 我本顽劣山猴,幸识大圣金舟。 误入青溪门下,才疏学浅怀羞。 平生散漫自由,总让师父心忧。 廿载习性难改,愿请荆条拨...
    瑾檀yuying阅读 807评论 32 51
  • 几日没写晨读只是在留言区出没过一次的我,看到今天的晨读和话题,终于忍不住打开了简书。今天的晨读标题和今日话题如下:...
    冰棍儿嗝阅读 731评论 51 35