python:ProcessPoolExecutor分块处理

时间:2018-10-08 00:50:05

标签: python-3.x

我正在尝试研究如何使用批量功能将批量记录处理为弹性搜索,并且需要使用线程来提高性能。但是我一直在努力找出如何将线程限制为5个并发,以免增加弹性。

我当时只是想循环数据库并填充一个列表,然后当它达到(50)时,推送到线程进行处理并继续。但是此方法将产生许多线程,在添加另一个线程之前,我无法看到一种明显的方法来限制踏步,而不等待所有步完成。

我之前已经在golang中完成了此操作,您可以在其中添加线程,并且当线程达到极限时,它只会在向队列中添加更多线程之前等待,但到目前为止在python中似乎还难以捉摸。

我愿意接受替代方法,但这似乎是迄今为止最干净的方法,但是可能会有更好的方法,例如db->有限制的队列,然后只是从队列中使用线程。

期待一些答复。

0 个答案:

没有答案