Forwarded from Афонасьев Евгений - IT, Python и вот это все
Tinkoff Python Meetup - Екатеринбург
Разблокируй это! Что такое nogil?
Сегодня выступаю с докладом на первом публичном python митапе от Тинькофф. Расскажу про GIL, как он появился, зачем, и как можно от него избавиться. Надеюсь, получится интересно. Для зрителей собрал все материалы по теме в одном месте.
Полезные материалы к докладу
- Григорий Петров - GIL в Python: зачем он нужен и как с этим жить | https://www.youtube.com/watch?v=AWX4JnAnjBE | Отличный доклад на тему того, чем является GIL, и зачем он нужен
- Guido van Rossum: Will Python ever remove the GIL? | https://www.youtube.com/watch?v=m4zDBk0zAUY&t=186s | Из первых уст. Создатель языка говорит зачем появился GIL, и почему его еще не удалили
- UnderstandingGIL | https://www.dabeaz.com/python/UnderstandingGIL.pdf | доклад 2010 года от Дэвида Бизли про GIL во втором питоне, а как он изменился в третьем. Много очень интересных особенностей реализации
- PEP 703 – Making the Global Interpreter Lock Optional in CPython | https://peps.python.org/pep-0703
- Keynote: Multithreaded Python without the GIL - presented by Sam Gross | https://www.youtube.com/watch?v=9OOJcTp8dqE | Автор PEP-703 рассказывает про свой подход отказа от GIL
- Обсуждение PEP и решение о его принятии со стороны python core developers | https://discuss.python.org/t/a-steering-council-notice-about-pep-703-making-the-global-interpreter-lock-optional-in-cpython/30474
- PEP 684 – A Per-Interpreter GIL | https://peps.python.org/pep-0684/ | альтернативный подход к решению проблем с GIL
- Афонасьев Евгений - А побыстрее можно? | https://www.youtube.com/watch?v=sX7nub8g3GA&list=PLRdS-n5seLRr-pYwibC3KqEdjZz_hzSUS&index=15&ab_channel=ВидеосмероприятийIT-People | доклад про оптимизации в работе с байтокодом, в рамках него я подробно рассказываю, что такое байткод и как с ним работает cpython
- Афонасьев Евгений - адаптируйся или умри | https://www.youtube.com/watch?v=yizjlvz-nfk&list=PLQC2_0cDcSKCsTQHo9lEH9cZQowiBOgS-&index=8 | в рамках доклада подробно разбирается, как работает Specializing Adaptive Interpreter
Reference Implementation
- https://github.com/colesbury/nogil-3.12
- https://github.com/colesbury/nogil
CPython internals
- https://devguide.python.org/internals/compiler про компиляцию python кода в байткод
- https://devguide.python.org/internals/interpreter/ как работает интерпретатор
Разблокируй это! Что такое nogil?
Сегодня выступаю с докладом на первом публичном python митапе от Тинькофф. Расскажу про GIL, как он появился, зачем, и как можно от него избавиться. Надеюсь, получится интересно. Для зрителей собрал все материалы по теме в одном месте.
Полезные материалы к докладу
- Григорий Петров - GIL в Python: зачем он нужен и как с этим жить | https://www.youtube.com/watch?v=AWX4JnAnjBE | Отличный доклад на тему того, чем является GIL, и зачем он нужен
- Guido van Rossum: Will Python ever remove the GIL? | https://www.youtube.com/watch?v=m4zDBk0zAUY&t=186s | Из первых уст. Создатель языка говорит зачем появился GIL, и почему его еще не удалили
- UnderstandingGIL | https://www.dabeaz.com/python/UnderstandingGIL.pdf | доклад 2010 года от Дэвида Бизли про GIL во втором питоне, а как он изменился в третьем. Много очень интересных особенностей реализации
- PEP 703 – Making the Global Interpreter Lock Optional in CPython | https://peps.python.org/pep-0703
- Keynote: Multithreaded Python without the GIL - presented by Sam Gross | https://www.youtube.com/watch?v=9OOJcTp8dqE | Автор PEP-703 рассказывает про свой подход отказа от GIL
- Обсуждение PEP и решение о его принятии со стороны python core developers | https://discuss.python.org/t/a-steering-council-notice-about-pep-703-making-the-global-interpreter-lock-optional-in-cpython/30474
- PEP 684 – A Per-Interpreter GIL | https://peps.python.org/pep-0684/ | альтернативный подход к решению проблем с GIL
- Афонасьев Евгений - А побыстрее можно? | https://www.youtube.com/watch?v=sX7nub8g3GA&list=PLRdS-n5seLRr-pYwibC3KqEdjZz_hzSUS&index=15&ab_channel=ВидеосмероприятийIT-People | доклад про оптимизации в работе с байтокодом, в рамках него я подробно рассказываю, что такое байткод и как с ним работает cpython
- Афонасьев Евгений - адаптируйся или умри | https://www.youtube.com/watch?v=yizjlvz-nfk&list=PLQC2_0cDcSKCsTQHo9lEH9cZQowiBOgS-&index=8 | в рамках доклада подробно разбирается, как работает Specializing Adaptive Interpreter
Reference Implementation
- https://github.com/colesbury/nogil-3.12
- https://github.com/colesbury/nogil
docker run -it nogil/python
pyenv install nogil-3.9.10-1
CPython internals
- https://devguide.python.org/internals/compiler про компиляцию python кода в байткод
- https://devguide.python.org/internals/interpreter/ как работает интерпретатор
❤🔥3
- Слушай, вот скажи мне, почему вы, разработчики, никогда не можете адекватно оценить время, необходимое для реализации проекта?
- Это очень просто. Вот смотри. Тебе надо разгрузить машину. За сколько ты управишься?
- Где-то за час.
- Это КАМАЗ.
- Четыре часа.
- Гружёный песком.
- Ну-у... часов двенадцать.
- Инструментов никаких нет, только руки и ноги.
- Ну, пару суток.
- На дворе - минус сорок.
- Четверо суток.
- КАМАЗ вообще находится под водой.
- Блин, что ты мелешь? Ты же постоянно новые условия вводишь! Надо говорить всё сразу и конкретно! И вообще, чем всякую хрень тут нести, давай-ка, быстренько оцени этот проект.❤🔥13
Forwarded from DataEng
Apache Airflow в Adyen
Люблю статьи про реальные кейсы использования технологий. Давеча встретил статью Apache Airflow at Adyen: Our journey and challenges to achieve reliability at scale. Adyen это известная в узких кругах платёжная система (кажется даже публичная компания). Статья про использование Airflow в высоконагруженной системе, где жизненно необходимо чтобы система была отказоустойчивой, масштабируемой и при это не сильно сложной. Рекомендую для ознакомления.
Люблю статьи про реальные кейсы использования технологий. Давеча встретил статью Apache Airflow at Adyen: Our journey and challenges to achieve reliability at scale. Adyen это известная в узких кругах платёжная система (кажется даже публичная компания). Статья про использование Airflow в высоконагруженной системе, где жизненно необходимо чтобы система была отказоустойчивой, масштабируемой и при это не сильно сложной. Рекомендую для ознакомления.
Medium
Apache Airflow at Adyen: Our journey and challenges to achieve reliability at scale
A blog post by Jorrick Sleijster and Natasha Shroff
❤🔥3
Forwarded from DataEng
Apache Kafka For Python Developers
Бесплатный курс по работе с Apache Kafka через Python: https://developer.confluent.io/courses/kafka-python/intro/
Бесплатный курс по работе с Apache Kafka через Python: https://developer.confluent.io/courses/kafka-python/intro/
Confluent
Introduction to Python for Kafka
In this lecture, you will learn why Python has become such a popular language for developing real time event streaming applications that take advantage of the Apache Kafka platform.
❤🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
Top вариантов использования Kafka:
🔘 Обработка и анализ логов
🔘 Потоковая передача данных
🔘 Мониторинг и оповещения
🔘 CDC (захват данных с изменениями)
🔘 Миграции
#kafka
#kafka
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥4🎄1