Postgres Broker for Dramatiq任务队列
dramatiq-pg的Python项目详细描述
Dramatiq PG——Dramatiq的Postgres经纪人
Dramatiq是 Python3。dramintiq pg提供基于postgres的dramintiq实现 经纪人。
功能
- 超级简单的部署
- 使用普通心理学2。没有orm。
- 将消息负载和结果存储为本机jsonb。
- 将所有消息存储在一个表中的专用架构中。
- 使用listen/notify保持工作同步。没有投票。
- 失败任务的重新排队
- 任务延迟。
- 感谢Postgres MVCC的可靠支持。
- 自我康复。旧消息不时被清除。
- 用于维护的实用程序CLI:flush、purge、stats等
注意,dramatiq假设任务是等幂的这个经纪人做同样的事 车祸后恢复的假设。
安装
- 从pypi安装dramatiq pg包:
$ pip install dramatiq-pg psycopg2-binary
确保安装了psycopg2或psycopg2二进制文件。 - 在数据库中应用dramatiq_pg/schema.sql文件:
$ psql -f dramatiq_pg/schema.sql
- 在导入参与者之前,请使用连接定义全局代理
游泳池:
importdramatiqimportpsycopg2.poolfromdramatiq_pgimportPostgresBrokerdramatiq.set_broker(PostgresBroker(i))@dramatiq.actordefmyactor():...
现在像任何dramatiq setup一样声明/导入actors和管理worker一个example script是 可用,在CI上测试。
cli工具dramatiq-pg
允许您重新排列消息,清除旧消息
并显示队列上的统计信息。有关详细信息,请参见--help
Dramatiq-pg documentation 托管在Gitlab上,并为您提供有关 博士后是戏剧经纪人。
支架
如果遇到错误或错过某个功能,请尽可能地open an issue on GitLab 尽可能多的信息。
Dramatiq_PG可在PostgreSQL许可下使用。