Python Asyncio: The Complete Guide

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • trio

    Trio – a friendly Python library for async concurrency and I/O

  • Not complete - doesn't include Task Groups [1]

    In fairness they were only included in asyncio as of Python 3.11, which was released a couple of weeks ago.

    These were an idea originally from Trio [2] where they're called "nurseries" instead of "task groups". My view is that you're better off using Trio, or at least anyio [3] which gives a Trio-like interface to asyncio. One particularly nice thing about Trio (and anyio) is that there's no way to spawn background tasks except to use task groups i.e. there's no analogue of asyncio's create_task() function. That is good because it guarantees that no task is ever left accidentally running in the background and no exception left silently uncaught.

    [1] https://docs.python.org/3/library/asyncio-task.html#task-gro...

    [2] https://github.com/python-trio/trio

    [3] https://anyio.readthedocs.io/en/latest/

  • shodohflo

    Pure Python netflow and DNS correlation, with reusable Frame Streams, DnsTap and Protobuf implementations

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • fastapi

    FastAPI framework, high performance, easy to learn, fast to code, ready for production

  • > FastAPI for a simple REST API is a huge mistake

    FastAPI can be sync or async, although sync will have "a small performance penalty"

    https://github.com/tiangolo/fastapi/issues/260#issuecomment-...

  • aiofiles

    File support for asyncio

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts