2👍
See the FAQ section in faust documentation
Can I use Faust with Django/Flask/etc.?
Yes! Use eventlet
as a bridge to integrate with asyncio
.
Using eventlet
This approach works with any blocking Python library that can work with eventlet
.
Using eventlet
requires you to install the aioeventlet
module, and you can install this as a bundle along with Faust:
$ pip install -U faust[eventlet]
Then to actually use eventlet as the event loop you have to either use the -L <faust --loop>
argument to the faust
program:
$ faust -L eventlet -A myproj worker -l info
or add import mode.loop.eventlet
at the top of your entry point script:
#!/usr/bin/env python3
import mode.loop.eventlet # noqa
Warning
It’s very important this is at the very top of the module, and that it executes before you import libraries.
Source:stackexchange.com