Если типичную программу на стандартном Python подвергнуть слишком высокой нагрузке, то она будет работать с черепашьей скоростью. Для решения этой проблемы была разработана библиотека asyncio, которая позволяет разбить программу на более мелкие задачи и планировать их выполнение. В итоге получающиеся приложения работают молниеносно и допускают масштабирование.В этой книге асинхронное, параллельное и конкурентное программирование рассматривается на конкретных примерах. Сложные для понимания вопросы иллюстрируются с помощью диаграмм, позволяющих наглядно представить, как работают задачи. Вы узнаете, как asyncio преодолевает ограничения Python и способствует ускорению медленных веб-серверов и микросервисов. Вы даже научитесь сочетать asyncio с традиционной многопроцессной обработкой, получив в награду резкий скачок производительности.Для программистов на Python среднего уровня. Опыт работы с конкурентностью не требуется.
Esli tipichnuyu programmu na standartnom Python podvergnut slishkom vysokoy nagruzke, to ona budet rabotat s cherepashey skorostyu. Dlya resheniya etoy problemy byla razrabotana biblioteka asyncio, kotoraya pozvolyaet razbit programmu na bolee melkie zadachi i planirovat ikh vypolnenie. V itoge poluchayushchiesya prilozheniya rabotayut molnienosno i dopuskayut masshtabirovanie.V etoy knige asinkhronnoe, parallelnoe i konkurentnoe programmirovanie rassmatrivaetsya na konkretnykh primerakh. Slozhnye dlya ponimaniya voprosy illyustriruyutsya s pomoshchyu diagramm, pozvolyayushchikh naglyadno predstavit, kak rabotayut zadachi. Vy uznaete, kak asyncio preodolevaet ogranicheniya Python i sposobstvuet uskoreniyu medlennykh veb-serverov i mikroservisov. Vy dazhe nauchites sochetat asyncio s traditsionnoy mnogoprotsessnoy obrabotkoy, poluchiv v nagradu rezkiy skachok proizvoditelnosti.Dlya programmistov na Python srednego urovnya. Opyt raboty s konkurentnostyu ne trebuetsya.