小编Shk*_*lar的帖子

使用 RabbitMQ 进行批处理的最佳实践

我正在寻找使用 Python 执行 ETL 的最佳方法。

我在 RabbitMQ 中有一个发送事件的通道(甚至可以每秒发送一次)。我想处理其中的每 1000 个。主要问题是 RabbitMQ 接口(我正在使用 pika)对每条消息都会引发回调。我研究了 Celery 框架,但是批处理功能在版本 3 中被弃用了。

最好的方法是什么?我考虑将事件保存在列表中,当事件达到 1000 时将其复制到其他列表并执行处理。但是,如何使其线程安全呢?我不想丢失事件,也害怕同步列表时丢失事件。

这听起来像是一个非常简单的用例,但是我没有找到任何好的最佳实践。

etl rabbitmq python-3.x

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

etl ×1

python-3.x ×1

rabbitmq ×1