Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Ist nicht blockierendes Redis Pubsub möglich?

Wenn Sie an eine nicht blockierende, asynchrone Verarbeitung denken, verwenden Sie wahrscheinlich ein asynchrones Framework/Server (oder sollten es verwenden).

  • Wenn Sie Tornado verwenden, gibt es Tornado-Redis . Es verwendet native Tornado-Generatoraufrufe. Seine Websocket-Demo bietet ein Beispiel für die Verwendung in Kombination mit pub/sub.

  • wenn Sie Twisted verwenden, gibt es txRedis . Dort haben Sie auch ein Pub/Sub-Beispiel.

  • Es scheint auch, dass Sie Redis-py in Kombination mit Gevent ohne Probleme verwenden können, indem Sie Gevents Monkey-Patching verwenden (gevent.monkey.patch_all()). ).

UPDATE:Seit der ursprünglichen Antwort sind 5 Jahre vergangen, in der Zwischenzeit hat Python native async IO-Unterstützung erhalten. Es gibt jetzt AIORedis, einen asynchronen IO Redis-Client.