2016-11-14 3 views
0

Ich verwende Sellerie für Async-Warteschlange in Kolben, ich habe die Warteschlange mit folgendem Code eingerichtet.Sellerie-Befehlszeile mit Windows-Fehler 87 Parameter ist falsch

from src import app 
from celery import Celery 

celery = Celery(app.name, broker=app.config['CELERY_BROKER_URL']) 
celery.conf.update(app.config) 

in config.py für Kolben ich habe.

Ich versuche, Arbeiter mit der Befehlszeile auf Windows über folgenden Befehl auszuführen.

celery worker -A src.celery 

Es gibt mir folgende Stacktrace.

-------------- [email protected] v4.0.0 (latentcall) 
---- **** ----- 
--- * *** * -- Windows-10-10.0.14393 2016-11-14 12:23:49 
-- * - **** --- 
- ** ---------- [config] 
- ** ---------- .> app:   src:0x4e6e550 
- ** ---------- .> transport: redis://localhost:6379/1 
- ** ---------- .> results:  redis://localhost:6379/1 
- *** --- * --- .> concurrency: 4 (prefork) 
-- ******* ---- .> task events: OFF (enable -E to monitor tasks in this worker) 
--- ***** ----- 
-------------- [queues] 
       .> celery   exchange=celery(direct) key=celery 


[2016-11-14 12:23:49,463: CRITICAL/MainProcess] Unrecoverable error: TypeError('must be integer<K>, not _subprocess_handle',) 
Traceback (most recent call last): 
    File "c:\python27\lib\site-packages\celery\worker\worker.py", line 203, in start 
    self.blueprint.start(self) 
    File "c:\python27\lib\site-packages\celery\bootsteps.py", line 119, in start 
    step.start(parent) 
    File "c:\python27\lib\site-packages\celery\bootsteps.py", line 370, in start 
    return self.obj.start() 
    File "c:\python27\lib\site-packages\celery\concurrency\base.py", line 131, in start 
    self.on_start() 
    File "c:\python27\lib\site-packages\celery\concurrency\prefork.py", line 112, in on_start 
    **self.options) 
    File "c:\python27\lib\site-packages\billiard\pool.py", line 1008, in __init__ 
    self._create_worker_process(i) 
    File "c:\python27\lib\site-packages\billiard\pool.py", line 1117, in _create_worker_process 
    w.start() 
    File "c:\python27\lib\site-packages\billiard\process.py", line 122, in start 
    self._popen = self._Popen(self) 
    File "c:\python27\lib\site-packages\billiard\context.py", line 383, in _Popen 
    return Popen(process_obj) 
    File "c:\python27\lib\site-packages\billiard\popen_spawn_win32.py", line 64, in __init__ 
    _winapi.CloseHandle(ht) 
TypeError: must be integer<K>, not _subprocess_handle 

Traceback (most recent call last): 
    File "<string>", line 1, in <module> 
    File "c:\python27\lib\site-packages\billiard\spawn.py", line 159, in spawn_main 
    new_handle = steal_handle(parent_pid, pipe_handle) 
    File "c:\python27\lib\site-packages\billiard\reduction.py", line 121, in steal_handle 
    _winapi.PROCESS_DUP_HANDLE, False, source_pid) 
WindowsError: [Error 87] The parameter is incorrect 

Ich habe redis-Paket installiert, und redis auch für Windows.

Antwort

Verwandte Themen