分布式和非分布式系统中具有redis超能力的轻量级队列接口

pimpamqueues的Python项目详细描述


PIMPAMQUEUES

具有redis超级功能的轻量级队列接口

Build statusLatest VersionSupported Python versions

说明

pimpamqueues提供了简单、轻量级的python接口,可以与分布式系统上的队列交互。

要求

功能

  • 支持Python2.7、3.4和3.5。
  • 提供用于创建不同类型队列的超级简单队列接口。
  • 设计用于分布式系统-也适用于非分布式系统。

队列接口

  • 简单的队列,只是一个普通的队列。
  • BucketQueue,具有极快速元素存在搜索法的唯一元素无序队列。
  • 智能队列,将已排队的元素存储在队列旁边,以便不再对相同的传入元素进行排队的队列。

安装

pip

对于pip安装,只要pip install pimpamqueues

$ pip install pimpamqueues

使用量

简单化
>>> from pimpamqueues.simplequeue import SimpleQueue
>>> queue= SimpleQueue(id_args=['simplequeue'])
>>> queue.num()0
>>> queue.push('egg')1
>>> queue.push_some(['bacon', 'spam'])3
>>> queue.num()3
>>> queue.pop()
b'egg'
>>> queue.is_empty()
False
>>> queue.push('spam', to_first=True)3
>>> queue.elements()[b'spam', b'bacon', b'spam']
>>> queue.pop()
b'spam'
>>> queue.elements()[b'bacon', b'spam']
...

布基队列
>>> from pimpamqueues.bucketqueue import BucketQueue
>>> queue= BucketQueue(id_args=['bucketqueue'])
>>> queue.num()0
>>> queue.push('egg')'egg'
>>> queue.push_some(['bacon', 'spam'])[b'bacon', b'spam']
>>> queue.num()3
>>> queue.pop()
b'spam'
>>> queue.is_empty()
False
>>> queue.push('spam')'spam'
>>> queue.elements(){b'bacon', b'egg', b'spam'}
>>> queue.pop()
b'spam'
>>> queue.elements(){b'bacon', b'egg'}
...

智能队列

>>> from pimpamqueues.smartqueue import SmartQueue
>>> queue= SmartQueue(id_args=['smartqueue'])
>>> queue.num()0
>>> queue.push('egg')'egg'
>>> queue.push_some(['bacon', 'spam'])[b'bacon', b'spam']
>>> queue.num()3
>>> queue.pop()
b'egg'
>>> queue.is_empty()
False
>>> queue.push('spam', to_first=True)''
>>> queue.elements()[b'bacon', b'spam']
>>> queue.pop()
b'bacon'
>>> queue.elements()[b'spam']
>>> queue.push('spam', force=True)'spam'
>>> queue.push_some(['spam', 'spam'], force=True)[b'spam', b'spam']
>>> queue.elements()[b'spam', b'spam', b'spam', b'spam']
...

历史记录

1.0.1(2015-01-28)

  • 包含了python所需的包以解决安装依赖关系。

1.0.0(2015-01-27)

  • 你好,皮姆帕姆奎尔斯。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
哦,我需要在这里重建Java吗?   java在按键后做一些事情(但需要等待一点)   java迭代ArrayList的泛型类型<User>   Android Studio和WebStorm之间的java语言级别不一致   java如何在复杂模型中使用@valid注释   Java字符串初始化为基元类型   java外键级联删除在OpenJPA/Postgresql中未按预期工作   java运行时堆分析;匹配模式的字符串何时初始化   java Selenium webdriver我无法将webdriver设置为Firefox I   java服务器发送事件(SSE)和Jetty(编程设置)   linux java。lang.NullPointerException和返回代码   OpenGL VBO多维数据集未正确渲染(Java、LWJGL)   java JavaFX如何将图形“裁剪”到按钮   java数据库插入未向表中添加数据   java在字符串数组中添加数字   在java中识别一串字符串中的编号系统/序列/模式