Redis队列问题?

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

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

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

阅读 3.7k
3 个回答

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

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

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题