【Lavavel】RedisQueue如何执行队列任务?
队列的基本功能:
1、立即执行;yes
2、延迟执行;yes
3、保证至少执行一次;yes
4、必须执行且最多执行一次;no
用到的数据结构:
list、Sorted sets
延迟执行的机制:
1、先把数据放入SortedSets类型的queues:queue_000:delayed中
2、在执行pop的时候,执行lua脚本,把SortedSets类型的queues:queue_000:delayed 中可以执行的数据rpush到list类型的queues:queue_000中
保证执行成功的机制:
1、把要执行的数据先放入SortedSets类型的queues:queue_000:reserved中
2、在执行pop的时候,执行lua脚本,把SortedSets类型的queues:queue_000:reserved 中可以执行的数据rpush到list类型的queues:queue_000中
3、任务执行成功,从SortedSets类型的queues:queue_000:reserved中执行删除预存的数据
相关教程:redis视频教程
以上就是【Lavavel】RedisQueue如何执行队列任务?的详细内容,更多请关注教程集其它相关文章!
您可能感兴趣的文章:
【Lavavel】RedisQueue如何执行队列任务?
【Go语言踩坑系列(八)】Goroutine(下)
Laravel 5.2 队列的配置和使用方法
C语言中多线程NSThread/NSOperation/GCD的使用
Python如何实现队列的同步实现
jquery队列queue与原生模仿其实现方法分享
Golang的Goruntine调度原理
golang:goroutinue原理笔记
一文带你读懂Python中的进程
php 如何实现队列