Ho Lee Fuk

Сенсей
⚔ АДМИНИСТРАТОР ⚔
Регистрация
22 Февраль 2018
Сообщения
11.997
Автор: Опрышко

Название: Асинхронное программирование на Python для начинающих (2021)

053c7f576e486b0984318247cb86c2fd.jpg


Описание:

Асинхронное программирование позволяет выдерживать большие нагрузки и писать более эффективный код. Большинство крупных проектов использует этот подход. Поэтому python-разработчикам важно знать основные принципы асинхронности, понимать отличия многопоточности от кооперативной многозадачности, и уметь все это применять на практике.

Основные темы, которые вы будете прорабатывать на нашем курсе:

- Как устроено асинхронное программирование в Python (GIL, Threading, кооперативная многозадачность)
- Стандартная python-библиотека asyncio
- Асинхронный веб-фреймворк aiohttp

Описание программы

Django vs Aiohttp

● Сравним Django и Aiohttp, поймем отличия

● Разберемся, когда следует применять Django, а когда – Aiohttp

● Сравним производительность Django и Aiohttp

● Разберемся, почему Aiohttp нельзя заменить Django 3.0 (c этой версии появилась поддержка асинхронности в Django)

Немного теории

● Поймем отличия CPU от IO bound операций

● Разберемся в python threading, поймем их особенность

● Рассмотрим способы реализовать многопоточность в Python (multiprocessing и Кооперативная многозадачность)

● Познакомимся с GIL, поймем зачем его добавили и почему еще не удалили

Asyncio

● Рассмотрим компоненты стандартной библиотеки asyncio и поймем как их применять на практике:

⁃ Coroutines

⁃ Tasks

⁃ Synchronization Primitives

⁃ Queues

Aiohttp client

● Научимся использовать клиент aiohttp для отправки запросов по протоколам http/https/web sockets/s3 при работе с сервисами:

⁃ VK API (http, long polling). Первые шаги при написании VK бота

⁃ Telegram API (http, long polling). Первые шаги при написании Telegram бота

⁃ Биржевое API (web socket)

● Научимся непрерывно получать данные от сервера, без предварительного запроса

⁃ Файловое API (s3). Научимся эффективно загружать большие файлы

Asyncio connectors

● Разберемся, что такое асинхронные коннекторы и как их выбирать

● Научимся работать с различными базами данных асинхронно: Postgres, Mongo, RabbitMQ, Elasticsearch

Aiohttp server

● Научимся работать с компонентами aiohttp сервера:

⁃ Handlers, routes и classview

⁃ Middleware и авторизация

⁃ Signals

● Разберемся, как решать типовые задачи, например:

⁃ Двухстороннее передача данных с помощью web socket

⁃ Эффективная загрузка файлов в s3 (stream)

⁃ Создание фоновых задачи

Устройство асинхронного программирования

● Разберемся, на чем работает асинхронное программирование в Python

● Поймем, что такое future и event loop, и реализуем свой собственный на генераторах

Подробнее:
Для просмотра содержимого вам необходимо авторизоваться.

Скачать:
🔒

Доступ ограничен

Авторизуйтесь, чтобы увидеть цену и получить доступ к материалам



Скрытый контент для пользователей All-dar.
 

Присоединяйтесь, чтобы открыть полный доступ

Комментарии и материалы этой темы доступны только зарегистрированным участникам

Новый участник?

Регистрация занимает меньше минуты

Уже с нами?

Войдите в свой аккаунт

Сверху