热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php实现自定义定时通知,做一个分钟级的灵活自定义定时处理方法

开局一张图,内容全靠编!!!小编最近遇到一个需求(环境LNMP),分钟级定时处理任务,还能自定义

fa0b7727debaf6c964b24287aa178294.png

开局一张图,内容全靠编!!!

小编最近遇到一个需求(环境LNMP),分钟级定时处理任务,还能自定义增减数据的数量以及开关启动。

说完之后,小伙伴们是不是有思路了呢,当然方法有很多的,我先给大家列出来,之后大家选择性去做。

(1)守护进程,写一个PHP脚本,死循环(while(true)),一直监听,然后能写一个sleep睡上自定义的时间进行处理

(2)那就要swoole上场了,有一个秒级的定时任务,当然这个还需要安装swoole扩展,有条件的小伙伴可以试试

(3)这个是我实现的思路(crontab),linux原声的处理方法,当然这个只能设置分钟级(但是已经完全符合我的需求了)

d92c4d165d18c770810cd1d4f29d938a.png

那在下就出招了:

首先我们写一个配置方法,专门用来设置几分钟执行一次,处理多少条数,是否开启

9c3e85d6fc6a76b3e50e5177d200f12a.png

之后我们就要写一个处理方法

455f1c4bb7e59713f24d4b033981834f.png

其中status就是开关的状态,1就是开启,0就是关闭,之后还有一个time字段,这个就是做时间处理的,比如设置了3分钟执行一次,那么就在配置里面time字段设置当前时间加上3分钟之后,这样就能满足需求,当然下面的逻辑根据你的实际需求完全可以自定义处理。

比如我们查询处理多少条,或者处理哪些数据,我们都可以在配置那里进行配置,之后查询配置条件,进行处理对应的数据。

最后就是在linux里面配置crontab了

7797f6c1676e46dee832368d1e679e99.png

当然了,这个只是一个简单的示例,海量级数据,需要怎么处理,还是需要大家自己进行思考来做业务处理,这个暂时比较适合中少量数据处理

81fa3ef465cdac6343c83f25bc80eb1d.png

最后偷偷问一句,你们开工了吗?



推荐阅读
author-avatar
叶肖帆Seantq_693
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有