Вопрос проверяет знание альтернативных асинхронных библиотек для Python-разработки.
Популярные асинхронные библиотеки: aiohttp (HTTP-клиент/сервер), asyncpg (PostgreSQL), aioredis (Redis), Tornado (веб-фреймворк), Sanic (аналог Flask для async). Также есть Quart (асинхронный Flask) и Databases (универсальный доступ к БД).
Sanic
from sanic import Sanic
app = Sanic("MyApp")
@app.route("/")
async def hello(request):
return text("Hello")Tornado
class MainHandler(tornado.web.RequestHandler):
async def get(self):
self.write("Hello")asyncpg (PostgreSQL):
conn = await asyncpg.connect()
await conn.execute("INSERT INTO users VALUES($1)", "John")aioredis (Redis):
redis = await aioredis.create_redis_pool()
await redis.set("key", "value")aiohttp:
async with aiohttp.ClientSession() as session:
async with session.get(url) as resp:
data = await resp.json()Когда использовать:
Sanic: для высоконагруженных API
asyncpg: при работе с PostgreSQL
aiohttp: для HTTP-клиентов/серверов