这个程序监听Redis队列。如果Redis中有数据,工作人员就会开始工作。所有这些作业都必须同时运行,这就是为什么每个工人都会监听一个特定的Redis队列。
我的问题是:运行20个以上的工人来听Redis是不是很常见?
python /usr/src/worker1.py python /usr/src/worker2.py python /usr/src/worker3.py python /usr/src/worker4.py python /usr/src/worker5.py ...……python /usr/src/worker6.py
发布于 2017-10-18 18:48:06
如果您的员工需要处理长时间的数据任务,这是一个解决方案。但是每个数据都必须由一个工作者来处理。
这样,你就可以轻松地(不用线程等)分配你的任务,最好你的工作人员不在同一台服务器上工作
发布于 2017-10-18 18:50:51
有多个工作进程(我指的是数百个或更多),可能在不同的机器上运行,从作业队列中获取作业确实是当今的一种常见模式。甚至还有一些完整的包/框架专门用于此类工作流,例如芹菜。
不太常见的是试图以一种看似特别的方式从头开始编写整个任务队列系统,而不是使用专用的任务队列系统,如Celery、ZeroMQ或类似的系统。
https://stackoverflow.com/questions/46808342
复制相似问题