You're conflating concurrency with parallelism.
Your 20000 concurrent connections with asyncio are not parallel. You can have 20000 threads if you want.
Your 20000 concurrent connections with asyncio are not parallel. You can have 20000 threads if you want.
As you well know 20000 threads is not a great way to do anything. Especially in Python.