Návrh na Task Queue Dispatcher

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
veena
Člen | 98
+
0
-

Dneska jsem objevil na Google App Engine zajímavou věc. Mají experimentální podporu pro Task Queue, nebo-li frontu úkolů.

Zavoláním funkce z toho API zařadíte úkol (data) do fronty. Úkoly jsou vlastně normální volání URL. Tomu principu se taky řiká „Web Hooks.“ Takže zpracování úkolu, jestli jsem to dobře pochopil, probíhá tak, že se na pozadí asynchronně zavolá ta URL, předaj se jí ty data a co si tam člověk napsal za zpracování je na něm.

Asynchronní úkoly jsou často typu: např. pošli mail, nebo: pošli 10 000 mailů :-) apod.

Kdo si chcete počíst, tak tady je doc:
http://code.google.com/…n/taskqueue/

Takovej Task Queue pro Nette by byl pěknej. Vzhledem k podpoře komponent a lisenerů by implementace mohla být i docela jednoduchá. Volitelná storage pro úkoly tj. dovedu si představit: DB, memcache, soubory. Nebo k tomu použít Nette\Cache a ta má vlastní úložiště.

Samozřejmě na normálním hostingu nám chybí ještě skript, který bude úkoly dispatchovat. Tj. měl by to být skript schopný pracovat s těmi úložišti resp. s cache a volat ty URL. Tenhle jeden skript by se pak dal do cronu a máme o asynchronní zpracování událostí na serveru (jednou provždy) postaráno.

Editoval veena (20. 8. 2009 20:03)

veena
Člen | 98
+
0
-

Když tak nad tím přemýšlím, tak to vlastně s komponentama a lisenerama nemá co dělat. Jde jen o to někam úkol uložit, aby si ho mohl dispatch skript vyzvednout.