Twisted из первых рук
Эта книга посвящена Twisted — событийно-ориентированному сетевому фреймворку на Python, который позволяет создавать уникальные проекты. В первой части рассматриваются особенности Twisted; на практических примерах показано, как его архитектура способствует тестированию, решает общие проблемы надежности, отладки и упрощает выявление причинно-следственных связей, присущих событийно-ориентированному программированию. Детально описываются приемы асинхронного программирования, подчеркивается важность отложенного вызова функций и сопрограмм. На примере использования двух популярных приложений, treq и klein, демонстрируются сложности, возникающие при реализации веб-API с Twisted, и способы их преодоления.
Вторая часть книги посвящена конкретным проектам, использующим Twisted. В число примеров входят использование Twisted с Docker, применение Twisted в роли контейнера WSGI, организация обмена файлами и многое другое. Читатель должен иметь некоторый опыт работы с Python и понимать основы контейнеров и протоколов. Знакомство с Twisted и с проектами, описанными в книге, не требуется.
Книга начинается с введения в событийно-ориентированное программирование, объясняя концепции мультиплексирования, неблокирующего ввода/вывода и управления сложностью. Авторы подробно разбирают архитектуру Twisted, показывая, как она облегчает разработку сетевых приложений. Особое внимание уделяется асинхронным подходам, включая Deferred и сопрограммы, что позволяет писать эффективный и надежный код.
Практические примеры из второй части помогут читателю применить полученные знания в реальных проектах, от интеграции с Docker до создания веб-сервисов. Книга будет полезна разработчикам Python, желающим освоить асинхронное программирование и создание масштабируемых сетевых приложений.
