Python Concurrency with Asyncio
Author | : Matthew Fowler |
Publisher | : Simon and Schuster |
Total Pages | : 374 |
Release | : 2022-03 |
ISBN-10 | : 9781617298660 |
ISBN-13 | : 1617298662 |
Rating | : 4/5 (60 Downloads) |
Download or read book Python Concurrency with Asyncio written by Matthew Fowler and published by Simon and Schuster. This book was released on 2022-03 with total page 374 pages. Available in PDF, EPUB and Kindle. Book excerpt: Learn how to speed up slow Python code with concurrent programming and the cutting-edge asyncio library. Use coroutines and tasks alongside async/await syntax to run code concurrently Build web APIs and make concurrency web requests with aiohttp Run thousands of SQL queries concurrently Create a map-reduce job that can process gigabytes of data concurrently Use threading with asyncio to mix blocking code with asyncio code Python is flexible, versatile, and easy to learn. It can also be very slow compared to lower-level languages. Python Concurrency with asyncio teaches you how to boost Python's performance by applying a variety of concurrency techniques. You'll learn how the complex-but-powerful asyncio library can achieve concurrency with just a single thread and use asyncio's APIs to run multiple web requests and database queries simultaneously. The book covers using asyncio with the entire Python concurrency landscape, including multiprocessing and multithreading. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology It’s easy to overload standard Python and watch your programs slow to a crawl. Th e asyncio library was built to solve these problems by making it easy to divide and schedule tasks. It seamlessly handles multiple operations concurrently, leading to apps that are lightning fast and scalable. About the book Python Concurrency with asyncio introduces asynchronous, parallel, and concurrent programming through hands-on Python examples. Hard-to-grok concurrency topics are broken down into simple flowcharts that make it easy to see how your tasks are running. You’ll learn how to overcome the limitations of Python using asyncio to speed up slow web servers and microservices. You’ll even combine asyncio with traditional multiprocessing techniques for huge improvements to performance. What's inside Build web APIs and make concurrency web requests with aiohttp Run thousands of SQL queries concurrently Create a map-reduce job that can process gigabytes of data concurrently Use threading with asyncio to mix blocking code with asyncio code About the reader For intermediate Python programmers. No previous experience of concurrency required. About the author Matthew Fowler has over 15 years of software engineering experience in roles from architect to engineering director. Table of Contents 1 Getting to know asyncio 2 asyncio basics 3 A first asyncio application 4 Concurrent web requests 5 Non-blocking database drivers 6 Handling CPU-bound work 7 Handling blocking work with threads 8 Streams 9 Web applications 10 Microservices 11 Synchronization 12 Asynchronous queues 13 Managing subprocesses 14 Advanced asyncio