What is asyncio?
This module provides infrastructure for writing single-threaded concurrent code using coroutines, multiplexing I/O access over sockets and other resources, running network clients and servers, and other related primitives.
asyncio is a tool in the Microframeworks (Backend) category of a tech stack.
Who uses asyncio?
Companies
16 companies reportedly use asyncio in their tech stacks, including kraken, Oh BiBi, and Zesty.ai Data and App Stack.
Developers
83 developers on StackShare have stated that they use asyncio.
asyncio Integrations
Pros of asyncio
4
4
3
2
Decisions about asyncio
Here are some stack decisions, common use cases and reviews by companies and developers who chose asyncio in their tech stack.
Jelena Dedovic
Software Engineer · | 6 upvotes · 312K views
Investigating Tortoise ORM and GINO ORM...
I need to introduce some async ORM with the current stack: Tornado with asyncio loop, AIOHTTP, with PostgreSQL and MSSQL. This project revolves heavily around realtime and due to the realtime requirements, blocking during database access is not acceptable.
Considering that these ORMs are both young projects, I wondered if anybody had some experience with similar stack and these async ORMs?
Blog Posts
asyncio Alternatives & Comparisons
What are some alternatives to asyncio?
Flask
Flask is intended for getting started very quickly and was developed with best intentions in mind.
Celery
Celery is an asynchronous task queue/job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well.
gevent
It is a coroutine -based Python networking library that uses greenlet to provide a high-level synchronous API on top of the libev or libuv event loop.
Node.js
Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
Tornado
By using non-blocking network I/O, Tornado can scale to tens of thousands of open connections, making it ideal for long polling, WebSockets, and other applications that require a long-lived connection to each user.