前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >做一个分钟级的灵活自定义定时处理方法

做一个分钟级的灵活自定义定时处理方法

作者头像
思梦php
发布2020-03-26 10:56:19
4020
发布2020-03-26 10:56:19
举报
文章被收录于专栏:PHP实战技术

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

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

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

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

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

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

那在下就出招了:

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

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

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

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

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

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 思梦PHP 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档