【问题标题】:What are Queue classes, Worker Classes, Job Classes in Python rq packagePython rq 包中的队列类、工作者类、作业类是什么
【发布时间】:2018-11-30 00:53:37
【问题描述】:

在阅读rq docs 时,我注意到有一些参数可以在启动worker 时传递给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 队列类。

什么是工作类、作业类和队列类,你什么时候使用它们?

【问题讨论】:

    标签: python python-3.x redis queue python-rq


    【解决方案1】:

    这只是类的继承(例如来自 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'
    

    就我而言,我为每个新工作都排除了重新加载库

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-23
      • 1970-01-01
      • 1970-01-01
      • 2013-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-21
      相关资源
      最近更新 更多