Apéndice A. Breve historia del soporte asíncrono en Python

A pesar de formar parte de la biblioteca estándar de Python desde hace mucho tiempo, el módulo asyncore adolece de defectos fundamentales derivados de una API inflexible que no responde a las expectativas de un módulo de red asíncrono moderno.

Además, su enfoque es demasiado simplista para proporcionar a los desarrolladores todas las herramientas que necesitan para explotar plenamente el potencial de las redes asíncronas.

La solución más popular ahora mismo en producción implica el uso de bibliotecas de terceros. A menudo proporcionan soluciones satisfactorias, pero existe una falta de compatibilidad entre estas bibliotecas, lo que tiende a hacer que las bases de código estén muy estrechamente vinculadas a la biblioteca que utilizan.

Laurens van Houtven, PEP 3153 (mayo de 2011): Soporte de E/S asíncrona

El objetivo de este apéndice es describir un poco la historia de la programación asíncrona en Python, y lo que quiero decir -que aún me sorprende cuando pienso en ello- es que la innovación clave que hemos estado esperando durante 20 años era la sintaxis del lenguaje.

A mucha gente le sorprenderá esto, pero Asyncio no es el primer intento que se ha hecho de añadir a Python soporte para la programación asíncrona en red, como se expone a continuación.

Al principio existía asyncore

[Comparado con asyncore,] Twisted es mejor en casi todos los aspectos posibles. Es más portátil, con más funciones, más sencillo, más escalable, ...

Get Utilizar Asyncio en Python now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.