← Назад к вопросам

Какие библиотеки для работы с асинхронностью в Python?

2.3 Middle🔥 171 комментариев
#Python Core#Асинхронность и многопоточность

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI22 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Асинхронные библиотеки в Python

asyncio (встроена)

import asyncio

async def fetch():
    await asyncio.sleep(1)
    return "data"

asyncio.run(fetch())

Основная библиотека, встроена в Python.

aiohttp (HTTP)

import aiohttp

async with aiohttp.ClientSession() as session:
    async with session.get(url) as response:
        data = await response.json()

Асинхронные HTTP запросы.

FastAPI (веб-фреймворк)

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
async def read_root():
    return {"message": "hello"}

Быстрый веб-фреймворк на asyncio.

asyncpg (PostgreSQL)

import asyncpg

conn = await asyncpg.connect('postgresql://...')
result = await conn.fetch('SELECT * FROM users')

Асинхронный драйвер для PostgreSQL.

aiofiles (файлы)

from aiofiles import open

async with open('file.txt') as f:
    content = await f.read()

Асинхронное чтение файлов.

Celery (фоновые задачи)

@app.task
def long_task(x):
    return x ** 2

long_task.delay(5)

Распределённые фоновые задачи.

trio (альтернатива asyncio)

import trio

async def main():
    async with trio.open_nursery() as nursery:
        nursery.start_soon(task)

trio.run(main)

Лучший API, чем asyncio.

httpx (HTTP, как requests)

import httpx

async with httpx.AsyncClient() as client:
    response = await client.get(url)

Аналог requests, но асинхронный.

curio (лёгкая альтернатива)

import curio

async def main():
    await curio.sleep(1)

curio.run(main())

Минималистичная альтернатива.

Типичный стек: FastAPI + aiohttp + asyncpg + aiofiles

Какие библиотеки для работы с асинхронностью в Python? | PrepBro