会员到期提醒的这种定时任务如何实现?
现在有个需求就是给那种付费会员发送会员到期的短信提醒!需求是在到期前一个月,到期前15天分别发送一条提醒!写个定时任务每天执行一次判断时间,这种方法大家不要再提了。数据量小可以,上了量就不适用了
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
现在有个需求就是给那种付费会员发送会员到期的短信提醒!需求是在到期前一个月,到期前15天分别发送一条提醒!写个定时任务每天执行一次判断时间,这种方法大家不要再提了。数据量小可以,上了量就不适用了
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(10)
我晕!!!!
通过swoole-crontab去定时每天扫?那还不如系统的crontab
swoole-crontab完全适用,注册一个发送短信的worker(可开多个),定时任务去获取需要发送的会员,推送到redis队列,让worker去处理就好了
不懂php和sql,假设每个人注册会员时,会同时添加到期30天和15天至某日的一个列表里。每次续会员,会在之前的两个表里移除自己,并写到后续的两个列表里。
服务器,每天查需要提醒的表单,按照表单里面的内容,发送通知?不知可不可以。
这个的问题是,之前那些会员没有如此操作,如何处理。可以一次性全倒出来,后续会员续和注册都如此处理。
为什么不采用队列进行处理,分开由数据库的触发器对时间进行触发处理(也可以考虑程序),之后推送到队列中,在由队列推送到短信接口(一般都有数量限制)
上量怎么就不适用?每天扫描一次,然后把要发的人插入一个临时表。然后用另外一个定时任务一直扫描这个临时表,每次拿一些出来发送,发送完清空,写入日志表。我们项目一直这么处理,几十万条一点压力没有,只是发送时间不定,队列一批批的处理。
不会有问题,用多线程处理
我感觉我们可以分步发送呀 ,也不知道对不对,想法而已。
服务器端每天判断一下时间,然后比对数据库,最后发送短信,整个流程太多的循环,感觉会有点庞大。何不采取分页,在一天的不同时间段来对不同页数的用户进行会员到期检测,那么服务器的空闲时间可以利用起来。也许也会不卡。
为什么不可以呢,数据量大到什么程度
付费会员有多大量