2

シリアルで実行したいジョブと、同時に並行して実行したいジョブの 2 種類があります。ただし、並列ジョブを順次スケジュールする必要があります (まだフォローしている場合)。あれは:

  1. A を行います。
  2. A を待って、B を実行します。
  3. B を待って、C の 2 つ以上のバージョンをすべて同時に実行します。

私の考えでは、2 つの redis キューがあり、serial_queue にはワーカーが 1 つしかありません。そして、複数のワーカーを持つ parallel_queue 。

serial_queue.schedule(
    scheduled_time=datetime.utcnow(),
    func=job_a,
     ...)    
serial_queue.schedule(
    scheduled_time=datetime.utcnow(),
    func=job_b,
     ...)

def parallel_c():
    for task in range(args.n_tasks):
        queue_concurrent.schedule(
            scheduled_time=datetime.utcnow(),
            func=job_c,
            ...)

serial_queue.schedule(
    scheduled_time=datetime.utcnow(),
    func=parallel_c,
     ...)

しかし、現在、このセットアップでは、 AttributeError: module '__main__' has no attribute 'schedule_fetch_tweets'. この関数を適切にパッケージ化するにはどうすればよいpython-rqですか?

4

1 に答える 1