Fronta na webu? web server = GUI fronta = tvrdá práce na pozadí úkoly, na které nemá web server čas (uživatel čeká...) nebo zdroje, aby je okamžitě vyřídil a vrátil odpověď
web servery hážou úkoly do fronty a pokračují ve své práci fronta si úkoly hromadí (FIFO) workery (greedy) asynchronně berou úkoly z fronty a zpracovávají je
rychlá odezva stránek (nemusí se udělat okamžitě? do fronty!) procesy na pozadí, generování, přepočítávání, zpracovávání, hromadné odesílání... asynchronní zpracování, distribuce přes více serverů (jak webových, tak workerů)
Ajajajaj! V žádném případě. Je to asynchronní klient-server technologie, ale... řízený frontendem pomalý (HTTP) bez záruk Vhodný akorát k tomu, aby se GUI dotazovalo backendu na stav zpracování. AJAJ
jednoduché na instalaci (na localhostu) open source, aktivní vývoj integrace s webovými frameworky (Django, Flask, Pylons, ...) podpora pro velké množství brokerů (RabbitMQ, Redis, Beanstalk, MongoDB, CouchDB, JakákolivDB, ...) plánování úkolů (cron) distribuovaná, využívá jádra procesoru (= paralelní) přístup k return values z úkolů hooks, routing, remote-control, monitoring, serialization, ironing, washing dirty dishes, managing fridge, cooking, cleaning, shopping, taking care of pets, ...
fronta – práce všeho druhu, na pozadí broker – posílá zprávičky Celery – lepí dohromady naši app, broker, databázi, workery, cron Supervisor – chobotnička na správu procesů na serveru (abychom se nezbláznili z Celery)