Асинхронный фреймворк FastAPI сейчас на хайпе, и, к слову, к нему стоит присмотреться. Я не так давно запилил небольшой сервис на основе него, в основном всё там IO-bound, поэтому получилось быстро и минималистично. Предыдущую версию сервиса я делал на Django + Celery, и это решение отжирало памяти как не в себя. С fastapi получилось уложиться в 60 мегабайт против 400+ на Django/Celery.
Если вы ещё не слышали про FastAPI, то я нашел подходящую статейку про построение микросервиса на FastAPI: https://dev.to/paurakhsharma/microservice-in-python-using-fastapi-24cc
Если вы ещё не слышали про FastAPI, то я нашел подходящую статейку про построение микросервиса на FastAPI: https://dev.to/paurakhsharma/microservice-in-python-using-fastapi-24cc
DEV Community
Microservice in Python using FastAPI
Creating Microservices with Python Introduction to Microservices Benefits of Microse...
Для того чтобы пользователи увидели видео в Интернете, его нужно не только загрузить на сервер, но и обработать (сконвертировать в необходимый формат, создать превью). Разработчики Яндекса ускорили этот процесс в 8 раз. Теперь записи будут быстрее предобрабатываться во всех сервисах, где есть видеоконтент (Эфир, КиноПоиск, Дзен, Новости).
Обычно видео кодируется последовательно одним сервером. Чтобы ускорить этот процесс, используют параллельное кодирование. Теперь видео разбивается на множество мелких фрагментов длиной около 10 секунд и обрабатывает их не поэтапно одним сервером, а одновременно сразу несколькими.
Параллельная обработка видео позволила Яндексу сократить задержку между загрузкой видео и его доступностью для пользователей. Раньше на создание нескольких версий разного качества для FullHD-фильма длиной в полтора часа уходило два часа, то теперь это занимает 15 минут.
Если при старом подходе серверы простаивали без задач или их, наоборот, не хватало, то теперь железо задействовано в работе более равномерно.
Обычно видео кодируется последовательно одним сервером. Чтобы ускорить этот процесс, используют параллельное кодирование. Теперь видео разбивается на множество мелких фрагментов длиной около 10 секунд и обрабатывает их не поэтапно одним сервером, а одновременно сразу несколькими.
Параллельная обработка видео позволила Яндексу сократить задержку между загрузкой видео и его доступностью для пользователей. Раньше на создание нескольких версий разного качества для FullHD-фильма длиной в полтора часа уходило два часа, то теперь это занимает 15 минут.
Если при старом подходе серверы простаивали без задач или их, наоборот, не хватало, то теперь железо задействовано в работе более равномерно.
Хабр
Как мы ускорили кодирование видео в восемь раз
Каждый день миллионы зрителей смотрят видео в интернете. Но чтобы видео стало доступно, его нужно не только загрузить на сервер, но и обработать. Чем быстрее это происходит — тем лучше сервису и его...
Ребята из JetBrains провели очередной крутой вебинар. На этот раз он был посвящен PyCharm и Django.
На вебинаре рассмотрели такие штуки как:
- Django specific автокомплит
- Dependency диаграммы
- Отладка Django шаблонов
- Генерирование type hints
И многое другое. Если вы создаёте веб-приложения на Django, а также используете PyCharm, то этот вебинар — must-watch: https://bit.ly/39rrUNh
На вебинаре рассмотрели такие штуки как:
- Django specific автокомплит
- Dependency диаграммы
- Отладка Django шаблонов
- Генерирование type hints
И многое другое. Если вы создаёте веб-приложения на Django, а также используете PyCharm, то этот вебинар — must-watch: https://bit.ly/39rrUNh
YouTube
Django with PyCharm Tips and Tricks
#PyCharm has long had rich support for Django. In this webinar we go through a number of Django-specific, bite-sized tips and tricks to speed up #Django development and put the IDE to work in your Django development.
Contents
- IDE setup: theme, font, etc.…
Contents
- IDE setup: theme, font, etc.…
На просторах сети нашел бесплатный курс от Стэнфордского Университета про веб-безопасность — CS 253 Web Security.
Ведёт его небезызвестный Feross Aboukhadijeh. Он в своё время прославился сервисом YouTube Instant, который в реальном времени выводил подсказки при поисковых запросах. После чего получил приглашение на работу в YouTube 😎
Курс определенно стоит вашего внимания!
Ведёт его небезызвестный Feross Aboukhadijeh. Он в своё время прославился сервисом YouTube Instant, который в реальном времени выводил подсказки при поисковых запросах. После чего получил приглашение на работу в YouTube 😎
Курс определенно стоит вашего внимания!
И снова поговорим про ETL
На PyCon RU я сравнивал 2 ETL-инструмента в экосистема Python:
- Luigi
- Apache Airflow
И в конце упоминал ещё несколько батареек на которые стоит обратить внимание. Среди них был Prefect.
Это относительно новый инструмент, который появился в результате коллаборации разработчиков из Apache Airflow и Dask. Мотивацию о создании нового инструмента они описали в посте Why not Airflow?. Но сейчас не об этом.
Вчера состоялся новый релиз Prefect, где наконец появился UI дэшборд. Я до этого времени особо не обращал на него пристального внимания, т.к. именно UI фишечки и не хватало. Кстати, небольшой пример пайплайна на Prefect я писал в рамках подготовки к PyCon RU 19.
Материалы:
- NYC Yellow Taxi Data Pipeline на Prefect
- Примеры пайплайнов на Airflow, Luigi, Prefect для выступления на PyCon RU 19
- Доклад на PyCon RU 19: ETL инструменты в экосистеме Python
- Сайт Prefect
На PyCon RU я сравнивал 2 ETL-инструмента в экосистема Python:
- Luigi
- Apache Airflow
И в конце упоминал ещё несколько батареек на которые стоит обратить внимание. Среди них был Prefect.
Это относительно новый инструмент, который появился в результате коллаборации разработчиков из Apache Airflow и Dask. Мотивацию о создании нового инструмента они описали в посте Why not Airflow?. Но сейчас не об этом.
Вчера состоялся новый релиз Prefect, где наконец появился UI дэшборд. Я до этого времени особо не обращал на него пристального внимания, т.к. именно UI фишечки и не хватало. Кстати, небольшой пример пайплайна на Prefect я писал в рамках подготовки к PyCon RU 19.
Материалы:
- NYC Yellow Taxi Data Pipeline на Prefect
- Примеры пайплайнов на Airflow, Luigi, Prefect для выступления на PyCon RU 19
- Доклад на PyCon RU 19: ETL инструменты в экосистеме Python
- Сайт Prefect
Medium
Why Not Airflow?
An overview of the Prefect engine for Airflow users
Кстати, возможно не все знают, но у меня есть старый проект по удаленным вакансиям remotelist.
Я давно его не развивал, сейчас планирую возобновить над ним работу.
Если вы ввиду последних событий задумались о поиске работы, велком 🤗
Телеграм канал: @remotelist
Сайт: remotelist.ru
Бот: @RemoteListBot
Я давно его не развивал, сейчас планирую возобновить над ним работу.
Если вы ввиду последних событий задумались о поиске работы, велком 🤗
Телеграм канал: @remotelist
Сайт: remotelist.ru
Бот: @RemoteListBot
Бесплатная книга по системному программированию на Си: http://cs241.cs.illinois.edu/coursebook/index.html
Ура! Я наконец завершил создание курса по построению дата-пайплайнов в Python, используя фреймворк Luigi: Введение в Data Engineering: дата-пайплайны
Идея создания курса пришла давно, в июле 2019 я начал готовить материал и выбирал платформу на которой он будет размещаться. Выбор пал в сторону Stepik по ряду причин: удобные инструменты, хорошее сообщество и условия по продаже курса. Первые уроки стали доступны в начале ноября 2019 года, тогда же стартовали продажи. К сожалению, на протяжении длительного периода не появлялся новый материал. Я прошу прощения у всех, кто купил курс и ждал материал так долго. В тот период был некоторый завал на работе, квартирный ремонт и череда болезней. Как итог, получил парочку негативных отзывов о курсе, вполне справедливо. К счастью, мне удалось решить все проблемы и продолжить наполнение новым и интересным контентом. Честно говоря я не ожидал, что простой казалось бы с виду курс отнимет столько времени и сил. Я не надеюсь, что затраченные усилия окупятся в денежном плане, но я безумно рад, что получил интересный, а главное суперполезный опыт. И считаю, что курс получился уникальным. Почему?
Я постарался сделать его максимально практическим, но в то же время не забыл про теорию и мотивацию. В курсе разобраны 5 практических задач от банального Hello World пайплайна до кастомных нотификаций об ошибках при выполнении в Telegram. Затронул не менее важную тему деплоя пайплайнов на продакшен, используя Docker. В конце курса подробно описал один из вариантов деплоя на serverless технологиях Amazon Web Services, используя Fargate, ECS,ECR, Cloud Map, Route 53. Такого материала вы нигде не найдёте. Курс получился миксом из текста и видео уроков.
Если вам интересна тема data engineering и построения дата пайплайнов на Python, то милости прошу по ссылке: https://bit.ly/34Ezq6J
Стоимость курса не изменилась, всего $10
Курс хостится на платформе Stepik, поэтому для его прохождения необходимо зарегистрироваться.
Идея создания курса пришла давно, в июле 2019 я начал готовить материал и выбирал платформу на которой он будет размещаться. Выбор пал в сторону Stepik по ряду причин: удобные инструменты, хорошее сообщество и условия по продаже курса. Первые уроки стали доступны в начале ноября 2019 года, тогда же стартовали продажи. К сожалению, на протяжении длительного периода не появлялся новый материал. Я прошу прощения у всех, кто купил курс и ждал материал так долго. В тот период был некоторый завал на работе, квартирный ремонт и череда болезней. Как итог, получил парочку негативных отзывов о курсе, вполне справедливо. К счастью, мне удалось решить все проблемы и продолжить наполнение новым и интересным контентом. Честно говоря я не ожидал, что простой казалось бы с виду курс отнимет столько времени и сил. Я не надеюсь, что затраченные усилия окупятся в денежном плане, но я безумно рад, что получил интересный, а главное суперполезный опыт. И считаю, что курс получился уникальным. Почему?
Я постарался сделать его максимально практическим, но в то же время не забыл про теорию и мотивацию. В курсе разобраны 5 практических задач от банального Hello World пайплайна до кастомных нотификаций об ошибках при выполнении в Telegram. Затронул не менее важную тему деплоя пайплайнов на продакшен, используя Docker. В конце курса подробно описал один из вариантов деплоя на serverless технологиях Amazon Web Services, используя Fargate, ECS,ECR, Cloud Map, Route 53. Такого материала вы нигде не найдёте. Курс получился миксом из текста и видео уроков.
Если вам интересна тема data engineering и построения дата пайплайнов на Python, то милости прошу по ссылке: https://bit.ly/34Ezq6J
Стоимость курса не изменилась, всего $10
Курс хостится на платформе Stepik, поэтому для его прохождения необходимо зарегистрироваться.
Stepik: online education
Введение в Data Engineering: дата-пайплайны
Курс раскрывает тему построения сложных дата-пайплайнов в экосистеме Python, а именно знакомит слушателя с удобным и гибким инструментом Luigi.
За время отсутствия новых постов появилась тонна нового и интересного материала в сети (огонь)
Во-первых, PyCon US впервые проходит дома. Дабы не пропадать добру, докладчики записали все свои доклады сидя дома, а организаторы любезно стали их выкладывать. Следите за новыми докладами на канале PyCon 2020. Из интересного:
- Static Typing in Python
- The Hidden Power of the Python Runtime
- Hands-On Web App Test Automation
Во-вторых, появились все доклады с HighLoad 2019, прошедшей в ноябре 2019. Из интересного:
- Переезжаем на ClickHouse: 3 года спустя
- Десятки ветвистых ETL-пайплайнов из сотен источников, Luigi рулит!)
- Клиентоориентированный Data Lake в игровой компании
Остальное можно посмотреть на канале HighLoad Channel
В-третьих, ребята из EdgeDB запустили серию уроков по asyncio, пока вышло 2:
- import asyncio: Learn Python's AsyncIO #1 - The Async Ecosystem
- import asyncio: Learn Python's AsyncIO #2 - The Event Loop
Во-первых, PyCon US впервые проходит дома. Дабы не пропадать добру, докладчики записали все свои доклады сидя дома, а организаторы любезно стали их выкладывать. Следите за новыми докладами на канале PyCon 2020. Из интересного:
- Static Typing in Python
- The Hidden Power of the Python Runtime
- Hands-On Web App Test Automation
Во-вторых, появились все доклады с HighLoad 2019, прошедшей в ноябре 2019. Из интересного:
- Переезжаем на ClickHouse: 3 года спустя
- Десятки ветвистых ETL-пайплайнов из сотен источников, Luigi рулит!)
- Клиентоориентированный Data Lake в игровой компании
Остальное можно посмотреть на канале HighLoad Channel
В-третьих, ребята из EdgeDB запустили серию уроков по asyncio, пока вышло 2:
- import asyncio: Learn Python's AsyncIO #1 - The Async Ecosystem
- import asyncio: Learn Python's AsyncIO #2 - The Event Loop
Школа бэкэнд-разработки на Python от Яндекса. Материалы доступны на хабре: https://habr.com/ru/company/yandex/blog/498856/#1
Хабр
Как научиться разработке на Python: новый видеокурс Яндекса
Осенью прошлого года в московском офисе Яндекса прошла первая Школа бэкенд-разработки. Мы сняли занятия на видео и сегодня рады поделиться на Хабре полным видеокурсом Школы. Он позволит вам научиться...
Forwarded from DataEng
Нашел в сети курс от MIT про распределённые системы: MIT 6.824: Distributed Systems, ведёт курс легендарный Роберт Морис: https://www.youtube.com/channel/UC_7WrbZTCODu1o_kfUMq88g/videos
Все знают Postman, а я недавно наткнулся на новую тулзу Insomnia для работы с API: https://insomnia.rest/
Монументальный труд про построение бэкэнда на Python от Яндекса: https://habr.com/ru/company/yandex/blog/499534/
Хабр
Практическое руководство по разработке бэкенд-сервиса на Python
Привет, меня зовут Александр Васин, я бэкенд-разработчик в Едадиле. Идея этого материала началась с того, что я хотел разобрать вступительное задание ( Я.Диск ) в Школу бэкенд-разработки Яндекса. Я...
К вопросу про целесообразность построение проекта на основе микросервисной архитектуры. Почитайте полезный пост от Twitter о том как они у себя удаляют данные в своём распределённом улье: https://blog.twitter.com/engineering/en_us/topics/infrastructure/2020/deleting-data-distributed-throughout-your-microservices-architecture.html
Весьма актуально в эпоху GDPR
Весьма актуально в эпоху GDPR
Twitter
Deleting data distributed throughout your microservices architecture
Twitter shares tips for deleting data in a microservices architecture using an erasure pipeline.
Очередной годный контент от Яндекса про REST, OpenAPI, Swagger и Python: https://habr.com/ru/company/yandex/blog/501088/
Хабр
Специфицируй это. Доклад Яндекса
Хорошая спецификация к API помогает клиентам его использовать. Несколько месяцев назад на большом Pytup разработчик Яндекса Александр Брязгин bryazginnn выступил...
Forwarded from DataEng
Появились доклады с прошедших двух митапов по Data Engineering, последний, к слову, проходил онлайн 🦠:
— Николай Марков – Какие дата инженеры бывают и чего от них все хотят?
— Евгений Ермаков – Что под капотом у Яндекс.Такси?
— Егор Матешук – Обзор Lambda- и Kappa-архитектур
— Денис Хуртин – Как устроена платформа управления данными в Яндекс.Маркет?
Приятного просмотра!
— Николай Марков – Какие дата инженеры бывают и чего от них все хотят?
— Евгений Ермаков – Что под капотом у Яндекс.Такси?
— Егор Матешук – Обзор Lambda- и Kappa-архитектур
— Денис Хуртин – Как устроена платформа управления данными в Яндекс.Маркет?
Приятного просмотра!
YouTube
DE or DIE #1. Николай Марков – Какие дата инженеры бывают и чего от них все хотят?
Материалы всех наших митапов доступны на GitHub: https://github.com/deordie/deordie-meetups
Наш чат в Telegram: https://news.1rj.ru/str/deordie_chat
Новые события сообщества DE or DIE: https://deordie.timepad.ru/events/
Автор доклада: Николай Марков, Principal Architect…
Наш чат в Telegram: https://news.1rj.ru/str/deordie_chat
Новые события сообщества DE or DIE: https://deordie.timepad.ru/events/
Автор доклада: Николай Марков, Principal Architect…
В свет вышла первая стабильная версия нового runtime для JavaScript — Deno. Разработка велась 2 года.
Разработчик Deno — Ryan Dahl, он же и автор Node.js. Проект Deno это по сути рефлексия на недостатки Node.js. Представляет он из себя безопасную runtime среду для запуска Javanoscript кода вне браузера, поддерживает TypeScript и весь новейший функционал стандарта ECMAScript, глоток свежего воздуха среди загазованного различными инструментами веба. Ядро Deno написано на Rust, использует JavaScript движок от Google V8 через биндинги
Deno это не форк Nodejs и, к сожалению, он несовместим с существующими npm пакетами, но потихоньку обрастает полезным кодом. У него уже есть обширная стандартная библиотека, а также база из пакетов сторонних разработчиков.
Уже сейчас можно практически полноценно работать с базой PostgreSQL, или создавать веб-приложения. Есть даже старый добрый шаблонизатор Handlebars.
Проект определенно стоит посмотреть. Доклад по мотивам Deno: 10 Things I Regret About Node.js
Разработчик Deno — Ryan Dahl, он же и автор Node.js. Проект Deno это по сути рефлексия на недостатки Node.js. Представляет он из себя безопасную runtime среду для запуска Javanoscript кода вне браузера, поддерживает TypeScript и весь новейший функционал стандарта ECMAScript, глоток свежего воздуха среди загазованного различными инструментами веба. Ядро Deno написано на Rust, использует JavaScript движок от Google V8 через биндинги
rusty_v8.Deno это не форк Nodejs и, к сожалению, он несовместим с существующими npm пакетами, но потихоньку обрастает полезным кодом. У него уже есть обширная стандартная библиотека, а также база из пакетов сторонних разработчиков.
Уже сейчас можно практически полноценно работать с базой PostgreSQL, или создавать веб-приложения. Есть даже старый добрый шаблонизатор Handlebars.
Проект определенно стоит посмотреть. Доклад по мотивам Deno: 10 Things I Regret About Node.js
Ахтунг! В сети стала доступна альфа версия Django 3.1
Почему это важно? Потому что начиная с 3.1 Django также можно считать асинхронным фреймворком 🤪😱
Уже сейчас стали доступны асинхронные вьюшки, и middleware. ORM пока по-прежнему остаётся синхронной балалайкой, но придуман хак в виде декоратора sync_to_async.
В общем, кому интересно — велком на тесты.
P.S. Чтобы ощутить полноценный асинхронный перформ от Django, приложение необходимо запускать через asgi-совместимый веб-сервер, например, uvicorn
Почему это важно? Потому что начиная с 3.1 Django также можно считать асинхронным фреймворком 🤪😱
Уже сейчас стали доступны асинхронные вьюшки, и middleware. ORM пока по-прежнему остаётся синхронной балалайкой, но придуман хак в виде декоратора sync_to_async.
В общем, кому интересно — велком на тесты.
P.S. Чтобы ощутить полноценный асинхронный перформ от Django, приложение необходимо запускать через asgi-совместимый веб-сервер, например, uvicorn
Очередная порция докладов с PyCon US 2020:
— Why is Python slow?
— Deploying Python at Scale with Dask
— Bridging Data Science and Data Infrastructure with Apache Airflow
— NVIDIA: GPU-Accelerated Data Analytics in Python
— Why is Python slow?
— Deploying Python at Scale with Dask
— Bridging Data Science and Data Infrastructure with Apache Airflow
— NVIDIA: GPU-Accelerated Data Analytics in Python
YouTube
Talk: Anthony Shaw - Why is Python slow?
Presented by:
Anthony Shaw
When Python completes a comparable application 2–10x slower than another language, why is it slow, and can’t we make it faster?
In this talk, we’re going to explore different theories to understand what makes Python slow, what…
Anthony Shaw
When Python completes a comparable application 2–10x slower than another language, why is it slow, and can’t we make it faster?
In this talk, we’re going to explore different theories to understand what makes Python slow, what…
DataCamp дают бесплатный доступ ко всем их материалам на 1 неделю, с 15 по 22 мая — https://bit.ly/2Z670Sb
Сам периодически прохожу там курсы, очень доволен.
Сам периодически прохожу там курсы, очень доволен.
Datacamp
DataCamp Sale 2023 | DataCamp Promo & Discount
Get the latest DataCamp promos and discounts for 2023. Take advantage of our latest sales and discounts to learn data science today, no promo codes needed.