在通读rq
docs时,我注意到在启动工作程序时可以传递一些参数给rq worker
示例:
rq worker --worker-class 'foo.bar.MyWorker'
参数列表包括
--worker-class
或-w
:要使用的RQ Worker类(例如rq worker --worker-class'foo.bar.MyWorker')--job-class
或-j
:要使用的RQ作业类。--queue-class
:要使用的RQ Queue类。什么是工作者类,工作类和队列类,什么时候使用它们?
答案 0 :(得分:0)
这只是类的继承(例如rq的Worker)
将其命名为base_worker.py
import pseudo_realy_necessery_library_for_every_job
from rq import Worker as BaseClass
class Worker(BaseClass):
def __init__(self, queues=None, *args, **kwargs):
u'''
Constructor.
Accepts the same arguments as the constructor of
``rq.worker.Worker``.
'''
super().__init__(queues, *args, **kwargs)
您可以运行
rq worker --worker-class='base_worker.Worker'
就我而言,我没有为每个新工作重新加载库