美文网首页
reids配合PHP创建队列

reids配合PHP创建队列

作者: zooeymoon | 来源:发表于2018-07-23 02:46 被阅读0次

使用redis创建一个队列

创建一个Queue类,使其拥有push,pop,getSize属性。符合队列的先进先出原则

<?php
/**
 * Created by PhpStorm.
 * 使用redis的list类型创建一个消息队列
 * User: liwenqiang
 * Date: 2018/5/17
 * Time: 10:58
 */

namespace App\Models\RedisList;


use Predis\Client;

class Queue
{
    private $queueName;
    private $queueKey;
    private $client;
    private $timeout;

    public function __construct($queueName)
    {
        $this->client = new Client();
        $this->queueName = $queueName;
        $this->queueKey = "queue:".$queueName;
        $this->timeout = 0;
    }

    public function getSize()
    {
        return $this->client->llen($this->queueKey);
    }

    public function push($element)
    {
        $this->client->lpush($this->queueKey,$element);
    }

    public function pop()
    {
        return $this->client->brpop([$this->queueKey],$this->timeout);
    }

}

相关文章

  • reids配合PHP创建队列

    使用redis创建一个队列 创建一个Queue类,使其拥有push,pop,getSize属性。符合队列的先进先出原则

  • laravel-队列配置

    php artisan make:job 文件名称 创建队列php artisan queue:work --da...

  • Laravel队列及supervisor

    队列 参考文档 使用 创建失败数据库 queue.php配置 SendSmsJob类 调用 测试php artis...

  • 如何开启队列

    1.创建队列表 php artisan queue:tablephp artisan migrate 2.生成任务...

  • iOS GCD

    任务和队列的创建方法 / 获取方法 队列的创建方法 / 获取方法 串行队列的创建方法 并发队列的创建方法。并发队列...

  • iOS多线程编程理解-GCD

    创建队列 创建串行队列 创建并行队列 获取全局队列 系统提供dispatch方法 创建异步任务,开启新线程,不阻塞...

  • iOS 网络开发

    多线程 NSThread GCD队列并发队列全局队列自己创建串行队列自己创建主队列任务:block函数sync:同...

  • 多线程与网络 - 概况

    多线程 NSThread GCD队列并发队列全局队列自己创建串行队列主队列自己创建任务:block函数sync:同...

  • iOS 基础网络篇

    多线程 NSThread GCD队列并发队列全局队列自己创建串行队列自己创建主队列任务:block函数sync:同...

  • GCD的队列类型与NSOperationQueue的队列类型

    GCD的队列类型 并发队列自己创建的全局 串行队列主队列自己创建的 NSOperationQueue的队列类型 主...

网友评论

      本文标题:reids配合PHP创建队列

      本文链接:https://www.haomeiwen.com/subject/axcdmftx.html