我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Redis Python Queue

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Redis Python Queue

RedisQueue.py文件内容:


import redis


class RedisQueue(object):

"""Simple Queue with Redis Backend"""

def __init__(self, name, namespace='queue', **redis_kwargs):

"""The default connection parameters are: host='localhost', port=6379, db=0"""

self.__db= redis.Redis(**redis_kwargs)

self.key = '%s:%s' %(namespace, name)


def qsize(self):

"""Return the approximate size of the queue."""

return self.__db.llen(self.key)


def empty(self):

"""Return True if the queue is empty, False otherwise."""

return self.qsize() == 0


def put(self, item):

"""Put item into the queue."""

self.__db.rpush(self.key, item)


def get(self, block=True, timeout=None):

"""Remove and return an item from the queue.


If optional args block is true and timeout is None (the default), block

if necessary until an item is available."""

if block:

item = self.__db.blpop(self.key, timeout=timeout)

else:

item = self.__db.lpop(self.key)


if item:

item = item[1]

return item


def get_nowait(self):

"""Equivalent to get(False)."""

return self.get(False)





使用


>>> from RedisQueue import RedisQueue

>>> q = RedisQueue('test')

>>> q.put('hello world')


打开另外一个窗口


redis-cli 客户端显示结果:

redis 127.0.0.1:6379> keys *1) "queue:test"redis 127.0.0.1:6379> type queue:testlistredis 127.0.0.1:6379> llen queue:test(integer) 1redis 127.0.0.1:6379> lrange queue:test 0 11) "helloworld"

另外脚本可以得到:

>>> from RedisQueue import RedisQueue>>> q = RedisQueue('test')>>> q.get()'hello world'


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Redis Python Queue

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Redis Python Queue

RedisQueue.py文件内容:import redisclass RedisQueue(object): """Simple Queue with Redis Backend""" def __init__(self, name,
2023-01-31

python queue

queue是一个先进先出的队列class Queue.Queue(maxsize)maxsize是一个×××,表示队列的大小,,不填,默认无限大Queue.qsize()返回队列的大小Queue.empty()如果队列为空,返回True,反
2023-01-31

Python -- Queue模块

学习契机最近的一个项目中在使用grpc时遇到一个问题,由于client端可多达200,每个端口每10s向grpc server发送一次请求,server端接受client的请求后根据request信息更新数据库,再将数据库和配置文件的某些数
2023-01-31

42. Python Queue 模

Python提供了Queue模块来专门实现消息队列Queue对象Queue对象实现一个fifo队列(其他的还有lifo、priority队列,这里不再介绍)。queue只有maxsize一个构造参数,用来指定队列容量,指定为0的时候代表容量
2023-01-31

python 多线程+queue

python的queue设计的是线程安全的,所以大家伙放心用吧! python多线程的一种简单的实现如下:#!/usr/bin/env python# -*- coding: utf-8 -*-import threadingimport
2023-01-31

41. Python Queue 多进

消息队列:消息队列是在消息传输过程中保存消息的容器。消息队列最经典的用法就是消费者和生产者之间通过消息管道来传递消息,消费者和生产生是不通的进程。生产者往管道中写消息,消费者从管道中读消息。相当于水管,有一个入口和出口,水从入口流入出口流出
2023-01-31

python消息队列Queue

实例1:消息队列Queue,不要将文件命名为“queue.py”,否则会报异常“ImportError: cannot import name 'Queue'”#coding=utf-8from multiprocessing import
2023-01-31

Python 队列Queue和Prior

Python的Queue模块适用于多线程编程的FIFO实现。它可用于在生产者(producer)和消费者(consumer)之间线程安全(thread-safe)地传递消息或其它数据,因此多个线程可以共用同一个Queue实例。FIFO: F
2023-01-31

[python模块]队列queue

一、队列queue队列queue 多应用在多线程场景,多线程访问共享变量。对于多线程而言,访问共享变量时,队列queue的线程安全的。因为queue使用了一个线程锁(pthread.Lock()),以及三个条件变量(pthread.cond
2023-01-31

python中Queue怎么通信

这篇文章主要介绍了python中Queue怎么通信,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python的五大特点是什么python的五大特点:1.简单易学,开发程序时,
2023-06-14

高性能Python之:Queue,deq

Python作为一门脚本语言,有着很多便捷易用的优秀特点,但他也有一个很大的缺陷,就是性能太差,这也是作为脚本语言不可避免的问题,这里我们来学习一些方法,提高Python的性能:为了大家测试方便,这里同时给了代码的图片版和文字版。queue
2023-01-31

Python queue模块功能大全

queue模块是Python内置的标准模块,可以直接通过import queue引用,这篇文章主要介绍了Python queue模块都具有哪些功能,需要的朋友可以参考下
2023-05-16

python中的Queue怎么通信

这篇文章主要介绍了python中的Queue怎么通信的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python中的Queue怎么通信文章都会有所收获,下面我们一起来看看吧。说明1、Queue可以使用multip
2023-06-30

ThinkPHP怎么使用think-queue实现redis消息队列

本篇内容主要讲解“ThinkPHP怎么使用think-queue实现redis消息队列”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ThinkPHP怎么使用think-queue实现redis消
2023-07-02

如何在python中实例化Queue

如何在python中实例化Queue?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。python有哪些常用库python常用的库:1.requesuts;2.scrapy;3
2023-06-14

Python队列Queue超详细讲解

Queue是python标准库中的线程安全的队列(FIFO)实现,提供了一个适用于多线程编程的先进先出的数据结构,即队列,用来在生产者和消费者线程之间的信息传递,本文给大家讲解Python队列Queue的相关知识,需要的朋友参考下吧
2023-05-16

python中的queue函数怎么使用

在Python中,`queue`模块提供了实现FIFO(先进先出)队列的类`Queue`和`deque`,以及实现优先级队列的类`PriorityQueue`。下面是`queue`模块中常用的几种函数的使用方法:1. 创建队列对象:```p
2023-08-11

python模块学习(queue模块的Q

学习版本3.5.2PriorityQueue类和LifoQueue类继承Queue类然后重写了_init、_qsize、_put、_get这四个类的私有方法Queue:先进先出队列的同步实现,通过双向列表实现的 # Initializ
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录