Non dovresti usare Redis pub/sub nel thread principale di Tornado, poiché bloccherà il loop IO. Puoi gestire il lungo polling dai client Web nel thread principale, ma dovresti creare un thread separato per l'ascolto di Redis. Puoi quindi utilizzare ioloop.add_callback()
e/o un threading.Queue
per comunicare con il thread principale quando ricevi messaggi.