redis
  • celery
  • django-celery
  • 2013-03-13 28 views 0 likes 
    0

    我正在測試Django +芹菜,你好世界的例子。隨着RabbitMQ的芹菜工作正常,但是當我切換到Redis的經紀人/結果我得到如下:巨大的延遲時使用芹菜+ Redis

    %timeit add.delay(1,2).get() 
    1 loops, best of 3: 503 ms per loop 
    

    settings.py

    CELERY_RESULT_BACKEND = "redis" 
    BROKER_URL = 'redis://localhost:6379' 
    

    tasks.py

    @task() 
    def add(x, y): 
        return x + y 
    

    上面的測試有沒有問題?

    回答

    1

    我發現解決方案是源代碼: http://docs.celeryproject.org/en/latest/_modules/celery/result.html#AsyncResult.get

    間隔 - 時間等待(秒)重試之前檢索結果。請注意,使用amqp結果存儲後端時,這不會產生任何影響,因爲它不使用輪詢。

    默認情況下它是0.5秒。您可以手動更改它,但不推薦用於運行任務的方式:

    %timeit add.delay(1,2).get(interval=0.001) 
    100 loops, best of 3: 3.92 ms per loop 
    
    相關問題