В стандартной библиотеке Python 3.4 в своё время появился модуль [asyncio][1], позволивший удобно и быстро писать асинхронный код. А уже к Python 3.5 в синтаксис [были][2] добавлены конструкции async/await, окончательно оформившие асинхронность «из коробки» как красивую и гармоничную часть языка.
Хотя asyncio сам по себе и позволяет писать высоконагруженные веб-приложения, оптимизация производительности не была приоритетом при создании модуля. Один из авторов упомянутого PEP-492 (async/await) [Юрий Селиванов][3] взялся за разработку альтернативной реализации цикла событий для asyncio — [uvloop][4]. Вчера вышла первая альфа-версия модуля, о чём автор написал [развёрнутый пост][5]. Если вкратце, то uvloop работает примерно в 2 раза быстрее Node.js и практически не уступает программам на Go. [Под катом небольшая выжимка из записи в блоге][6]
[1]:
https://docs.python.org/3/library/asyncio.html
[2]:
https://www.python.org/dev/peps/pep-0492/
[3]:
https://twitter.com/1st1
[4]:
https://github.com/MagicStack/uvloop
[5]:
http://magic.io/blog/uvloop-make-python-networking-great-again/
[6]:
https://habrahabr.ru/post/282972/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut