Що нового?

Придбаний [kts] асинхронне Програмування на Python для початківців. Базовий трек (Олександр Опришко)

Інформація про покупку
Тип покупки: Складчина
Ціна: 2942 ГРН
Учасників: 0 з 91
Організатор: Відсутній
Статус: Набір учасників
Внесок: 33.6 ГРН
0%
Основний список
Резервний список

Gadzhi

Модератор
асинхронне програмування дозволяє витримувати великі навантаження і писати більш ефективний код. Більшість великих проектів використовує цей підхід. Тому python-розробникам важливо знати основні принципи асинхронності, розуміти відмінності багатопоточності від кооперативної багатозадачності, і вміти все це застосовувати на практиці.

Основні теми, які ви будете опрацьовувати на нашому курсі:
  • як влаштовано асинхронне програмування в Python (GIL, Threading, Кооперативна багатозадачність)
  • стандартна python-бібліотека asyncio
  • асинхронний веб-фреймворк aiohttp
Django vs Aiohttp
● Порівняємо Django і Aiohttp, зрозуміємо відмінності
● Розберемося, коли слід застосовувати Django, а коли-Aiohttp
● Порівняємо продуктивність Django і Aiohttp
● Розберемося, чому Aiohttp не можна замінити Django 3.0 (C цієї версії з'явилася підтримка асинхронності в Django)
1
Трохи теорії
● Зрозуміємо відмінності CPU від Io Bound операцій
● Розберемося в python threading, зрозуміємо їх особливість
● Розглянемо способи реалізувати багатопоточність в Python (multiprocessing і Кооперативна багатозадачність)
● Познайомимося з GIL, зрозуміємо навіщо його додали і чому ще не видалили
2
Asyncio
● Розглянемо компоненти стандартної бібліотеки asyncio і зрозуміємо як їх застосовувати на практиці:
⁃ Coroutines
⁃ Tasks
⁃ Synchronization Primitives
⁃ Queues
3
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). Навчимося ефективно завантажувати великі файли
4
Asyncio connectors
● Розберемося, що таке асинхронні коннектори і як їх вибирати

● Навчимося працювати з різними базами даних асинхронно: Postgres, Mongo, RabbitMQ, Elasticsearch
5
Aiohttp server
● Навчимося працювати з компонентами aiohttp сервера:
⁃ Handlers, routes і classview
⁃ Middleware і авторизація
⁃ Signals

● Розберемося, як вирішувати типові завдання, наприклад:
⁃ Двостороннє передача даних за допомогою web socket
⁃ Ефективне завантаження файлів в s3 (stream)
⁃ Створення фонових завдання
6
Пристрій асинхронного програмування
● Розберемося, на чому працює асинхронне програмування в Python
● Зрозуміємо, що таке future і event loop, і реалізуємо свій власний на генераторах
https://privatelink.de/?https://metaclass.kts.studio/aiohttp
 
Угорі