I agree with you. Async IO is more efficient than threading for **waiting** I/O. When there are thousands of idle connections, async I/O is best idea.
On the other hand, async I/O uses more system calls for busy I/O. For example, when building chat application which handles thousands WebSocket connection and uses MySQL as backend, I recommend to use asyncio for WebSocket, but threadpool for transaction. Regards, -- https://mail.python.org/mailman/listinfo/python-list