帮助发布到队列并处理队列中任务的分发器。
impulsare-distributer的Python项目详细描述
概述
基于rq并为脉冲创建的队列管理器。它有助于: -将项目添加到队列 -通过cli侦听器侦听队列
有关配置示例,请参见tests/static/
安装/使用
要安装,请使用pip:
$ pip install --upgrade impulsare-distributer
配置
您需要创建/添加到配置文件:
distributer:# Required, redis addresshost:192.168.108.3# Optionalport:6379# If a component needs to send data to a queue,# define here where what is the queue's name (next one)# used by impulsare-ruler to send to writer for example (ruler: {queue: writer})testqueue:queue:my_test_queue
听者
这是rq'sworker的一个简单实现。如果你需要排队, 不需要配置文件,在cli中运行:
$ queue-listener --host redis --queue my_test_queue
为了能够看到下一个示例的工作,请将其保持在单独的窗口中打开
队列使用情况
使用队列管理器并发送要处理的作业:
fromimpulsare_distributerimportQueueManagerfrommymoduleimportmy_methodqueue=QueueManager(config_file='tests/static/config_valid.yml',listener='testqueue')queue.add(method=my_method,item='Hello World',job='test')
开发和测试
$ pip install -r requirements.txt $ pip install -r requirements-dev.txt $ py.test
如果在本地主机以外的其他redis服务器上运行测试:
$ REDIS=redis py.test