Jquery中文网 www.jquerycn.cn
Jquery中文网 >  脚本编程  >  php  >  正文 【Lavavel】RedisQueue如何执行队列任务?

【Lavavel】RedisQueue如何执行队列任务?

发布时间:2021-01-01   编辑:www.jquerycn.cn
jquery中文网为您提供【Lavavel】RedisQueue如何执行队列任务?等资源,欢迎您收藏本站,我们将为您提供最新的【Lavavel】RedisQueue如何执行队列任务?资源
利用Redis可以很方便的实现一个任务队列,本篇文章是对队列的执行原理的简单介绍。

队列的基本功能:

  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如何执行队列任务?的详细内容,更多请关注jquery中文网其它相关文章!

  • 本文转载于:博客园,如有侵犯,请联系jquerycn@qq.com删除
  • 您可能感兴趣的文章:
    【Lavavel】RedisQueue如何执行队列任务?
    Laravel 5.2 队列的配置和使用方法
    C语言中多线程NSThread/NSOperation/GCD的使用
    jquery队列queue与原生模仿其实现方法分享
    php 如何实现队列
    如何用PHP实现队列算法
    进一步认识python线程池
    Python3爬虫:使用代理爬取微信公众号文章(实战)
    数据结构与算法JavaScript (二) 队列
    Python如何实现线程间同步

    [关闭]