php - Redis队列问题?
大家讲道理
大家讲道理 2017-04-11 10:29:29
[PHP讨论组]

首先描述一下我的使用场景:

有一张mysql数据表call_records用于存储通话录音相关信息,我需要加一个定时任务,假设每5分钟执行一次任务脚本,脚本的作用是将录音的资源文件上传到七牛云,上传完成后将上传完的地址更新到call_records表中并且将数据推送给第三方平台。

使用redis对列遇到的问题,假如我在上传的时候使用队列上传,加入第一次上传的20个其中有部分失败了,第二次上传的时候我该从什么mysql什么位置开始查找数据,而不包含redis里面失败的任务.

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(3)
ringa_lee

可以正序取出20条记录,同时记下取出`call_records`的最大id(记在哪里就看自己方便了),下次再取时判断大于这个id。

巴扎黑

为什么不先用队列传到七牛,再入库呢?是业务决定的吗?如果是的话,可以找个地方来记录每次数据的最大值,比如:字段,表,配置文件,redis都可以记录

PHP中文网

这个上传最后入库队列的有顺序限制吗,如果没有,可以将失败的再次放入redis队列的队尾中,等上传成功,更新数据库表,另外你自己说的更新call_record是具体的update还是insert呢

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号