Redis
 sql >> Database >  >> NoSQL >> Redis

Posso usare Tornado+ Celery+ RabbitMQ + Redis?

Sto usando Tornado e RabbitMQ (senza Celery) insieme con molto successo in questo momento. Ho anche eseguito alcuni prototipi con Redis collegato al sistema come db. La tua migliore possibilità di successo è trovare librerie asincrone che possono collegarsi a ioloop di Tornado. Ad esempio ci sono tornado-redis, pika (per RabbitMQ) e tornado-celery. Devo aggiungere che non ho mai usato il sedano tornado, quindi non sono sicuro della sua qualità.

Da un punto di vista puramente architettonico, non credo che ci sia qualcosa di sbagliato nell'usare Redis e RabbitMQ insieme. Sebbene entrambi possano essere utilizzati come broker di messaggi, RabbitMQ non è davvero appropriato per l'uso come cache, mentre Redis è adatto per quel caso d'uso. Se stessi usando memcached invece di Redis, non sembrerebbe affatto insolito, giusto?

Inoltre (e forse questo è il miglior argomento che posso fare per suggerire che Redis + RabbitMQ possono funzionare), Pinterest apparentemente usa (o almeno usa) entrambi per gestire il proprio sito:http://blog.gopivotal.com/pivotal/case- studi-2/utilizzo-redis-a-pinterest-per-miliardi-di-relazioni.

Ho trovato un'altra fonte che dice che alla fine hanno sostituito Celery/RabbitMQ con un'altra soluzione, ma chiaramente ha funzionato per loro per un po'.

modifica: Ho trovato un link Quora del 2011 che dice che in realtà stavano eseguendo anche Tornado!