使用amazon sqs和boto的简单队列服务

pysqes的Python项目详细描述


pysqes
==


*使用sqs和boto为python提供简单的队列服务。*

…图片::https://travis ci.org/sauramirez/pysqes.png
:alt:build status
:target:https://travis ci.org/sauramirez/pysqes



用法
==
为了创建任务,可以使用sqstask类创建一个实例,该实例包含一个函数装饰器,运行delay方法时可以将其发送到队列将添加到函数中。delay函数接受工人在实际执行任务时使用的参数。代码块::python

from boto.sqs.connection import sqsconnection
from pysqes.task import task

conn=sqsconnection('access_key','secret_key')
queue=queue(conn,'pysqes_test',backend=backend)

def add(a,b):
return a+b

queue.enqueue(add,1,2)


您可以使用
sqsworker类中包含的工作方法来运行任务,您只需创建一个工作实例即可。


。代码块::python

from boto.sqs.connection import sqsconnection
from pysqes.runners.gevent_runner import geventrunner
from pysqes.worker import worker

conn=sqsconnection('access_key','secret_key')
runner=geventrunner()
queue=queue(conn,'pysqes_test',backend=backend)
worker=worker(queue,runner=runner)



可以通过在命令行中使用gevent标志
,并设置希望运行
的线程数。
注意:它只在gevent 1.0中测试过


命令行脚本
=
pysqes现在带有命令行脚本。worker命令将是此版本唯一可用的
,但task和peek命令可能会达到0.3。

代码块::bash

pysqes worker--gevent--workerpath=/home/user/pysqesproj/--config=pysqesconfig--configpath=/home/user/pysqesproj/settings/


如果您使用的是python 2.7,那么可以通过使用unittest模块中包含的新发现运行程序来运行单元测试:

。代码块::bash

python-m unit test discover-s测试


或者您可以单独运行每个单元测试。



0.3
===
*新的命令行脚本。
*测试命令行脚本。
*更好的日志记录。

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

推荐PyPI第三方库


热门话题
java以编程方式最小化JInternalFrame?   java使用JsonPath将不均匀列表提取为类型化对象   spring如何将java/resources文件获取到InputStream?   Java逻辑错误并不总是存在   java Firebase,更新特定字段   Java stream groupby并同时加入以进行csv导出   java安卓:如果出现任何声音,监听器将录制声音   java如何从多个文件中轮询最后修改的文件并发送到apache camel中的目标端点?   java是否返回多个比较器?   JavaBean IO:Date MMM在CAPS中不解析   当JButton从另一个类单击时,java正在更新JLabel   基类中子类的Java泛型初始化   jakarta ee Java ee制作一个以毫秒为间隔的计时器来发送数据包   json Windows Azure日期格式转换为Java日期