有一张mysql数据表call_records用于存储通话录音相关信息,我需要加一个定时任务,假设每5分钟执行一次任务脚本,脚本的作用是将录音的资源文件上传到七牛云,上传完成后将上传完的地址更新到call_records表中并且将数据推送给第三方平台。
使用redis对列遇到的问题,假如我在上传的时候使用队列上传,加入第一次上传的20个其中有部分失败了,第二次上传的时候我该从什么mysql什么位置开始查找数据,而不包含redis里面失败的任务.
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
可以正序取出20条记录,同时记下取出`call_records`的最大id(记在哪里就看自己方便了),下次再取时判断大于这个id。
为什么不先用队列传到七牛,再入库呢?是业务决定的吗?如果是的话,可以找个地方来记录每次数据的最大值,比如:字段,表,配置文件,redis都可以记录
这个上传最后入库队列的有顺序限制吗,如果没有,可以将失败的再次放入redis队列的队尾中,等上传成功,更新数据库表,另外你自己说的更新call_record是具体的update还是insert呢