7.09.2025 состоялся релизPithon 3.14!
На фоне хайпа про NoGIL всё позабыли про другие фичи. Особенно про Multiple Interpreters, который обещает изоляцию процессов но с эффективностью потоков! На сколько действительно это будет эффективно мы узнаем позже, потому что сейчас это лишь первый релиз с ограничениями и недоработками.
Но что там про NoGIL? Теперь этот режим не экспериментальный, а официально поддерживаемый, но опциональный.
Чтобы запустить без GIL нужна специальная сборка. И перед стартом нужно объявить переменную PYTHON_GIL=0
Для вас я собрал готовый репозиторий где достаточно запустить скрпит, который всё сделает:
▫️ соберет релизный Python 3.14 в новый Docker-образ
▫️ запустит тесты в контейнере (GIL, NoGIL, MultiInterpreter)
▫️ распечатает результаты
Тест очень простой, усложняйте сами)
Вот какие результаты у меня:
=== Running ThreadPoolExecutor GIL ON
TOTAL TIME: 45.48 seconds
=== Running ThreadPoolExecutor GIL OFF
TOTAL TIME: 6.14 seconds
=== Running basic Thread GIL ON
TOTAL TIME: 45.54 seconds
=== Running basic Thread GIL OFF
TOTAL TIME: 4.74 seconds
=== Running with Multi Interpreter
TOTAL TIME: 18.30 seconds
Если сравнивать GIL и NoGIL, то на мои 32 ядра прирост х7-x10 (почему не х32? 🤷). При этом нам обещают что скорости будут расти с новыми релизами.
Режим без GIL похож (визуально) на async, тоже параллельно, тоже не по порядку. Но это не IO! и от того некоторый диссонанс в голове 😵💫, нас учили не так!
Интересно, что чистый Thread работает быстрей чем ThreadPoolExecutor без GIL.
Ну и где-то плачет один адепт мульти-интерпретаторов😭 Теперь нужно искать где они могут пригодиться с такой-то скоростью. Скорее всего своя область применения найдется.
Отдельно я затестил память и вот что вышло на 32 потока:
ThreadPoolExecutor GIL ON
305.228 MB
ThreadPoolExecutor GIL OFF
500.176 MB
basic Thread GIL ON
90.668 MB
basic Thread GIL OFF
472.444 MB
with Multi Interpreter
1267.788 MB
Пока не знаю как к этому относиться)
В целом - радует направление развития!
#release
💻 Книга "Мониторинг PostgreSQL".
• Эта книга всесторонне охватывает обширную тему мониторинга, соединяя в себе справочные материалы об имеющемся инструментарии, практические приемы его использования и способы интерпретации полученных данных. Знание внутреннего устройства PostgreSQL и особенностей мониторинга, почерпнутое из этой книги, поможет в долгосрочной перспективе эффективно эксплуатировать СУБД и успешно решать возникающие задачи. Книга предназначена для администраторов баз данных, системных администраторов, специалистов по надежности.
- Глава 1. Обзор статистики;
- Глава 2. Статистика активности;
- Глава 3. Выполнение запросов и функций;
- Глава 4. Базы данных;
- Глава 5. Область общей памяти и ввод-вывод;
- Глава 6. Журнал упреждающей записи;
- Глава 7. Репликация;
- Глава 8. Очистка;
- Глава 9. Ход выполнения операций;
- Приложение. Тестовое окружение.
➡Скачать книгу.
#PostgreSQL
👩💻Бесплатный мини-курс: PostgreSQL для новичков.
• Достаточно хороший и бесплатный курс от Selectel, если хотите погрузиться в мир PostgreSQL. В этом курсе говориться про установку и настройку базы данных PostgreSQL, как ими управлять, организовать резервное копирование и репликацию. А главное — что делать, если администрировать самим БД не хочется.
- Подойдет ли PostgreSQL вообще всем проектам или нужны альтернативы;
- Установка и использование PostgreSQL в Ubuntu 22.04;
- Как настроить репликацию в PostgreSQL;
- Резервное копирование и восстановление PostgreSQL: pg_dump, pg_restore, wal-g;
- Установка и настройка PostgreSQL в Docker;
- Установка пулера соединений PgBouncer для PostgreSQL;
- Популярные расширения для PostgreSQL: как установить и для чего использовать;
- Как создать пользователя в PostgreSQL;
- Как узнать версию PostgreSQL;
- DBaaS: что такое облачные базы данных;
- Как работают облачные базы данных PostgreSQL;
- Как начать работу с облачной базой данных PostgreSQL;
- 8 книг по PostgreSQL для новичков и профессионалов;
- Морской бой на PostgreSQL.
#PostgreSQL
👩💻 PostgreSQL 16 изнутри.
• Компания Postgres Professional разместила в свободном доступе книгу "PostgreSQL 16 изнутри" (PDF, 665 стр.). В книге детально рассматривается устройство СУБД PostgreSQL. Книга будет полезной администраторам и разработчикам, желающим разобраться во внутреннем устройстве PostgreSQL, а также тем, кто хорошо знаком с устройством другой СУБД, но переходит на PostgreSQL и хочет разобраться в отличиях.
• Здесь вы не найдете готовых рецептов. Ведь на все случаи жизни их все равно не хватит, а понимание внутренней механики позволяет критически переосмысливать чужой опыт и делать собственные выводы. Именно поэтому автор объясняет, как что устроено, возможно даже более подробно, чем на первый взгляд может показаться практичным.
• Большая часть сведений будет актуальна еще довольно долго. Обдумывайте, экспериментируйте, проверяйте. В PostgreSQL для этого есть все инструменты, и автор старался показать, как ими пользоваться.
• Часть I. Изоляция и многоверсионность:
- Изоляция;
- Страницы и версии строк;
- Снимки данных;
- Внутристраничная очистка и hot-обновления;
- Очистка и автоочистка;
- Заморозка;
- Перестроение таблиц и индексов.
• Часть II. Буферный кеш и журнал:
- Буферный кеш;
- Журнал предзаписи;
- Режимы журнала.
• Часть III. Блокировки:
- Блокировки отношений;
- Блокировки строк;
- Блокировки разных объектов;
- Блокировки в памяти.
• Часть IV. Выполнение запросов:
- Этапы выполнения запросов;
- Статистика;
- Табличные методы доступа;
- Индексные методы доступа;
- Индексное сканирование;
- Вложенный цикл;
- Хеширование;
- Сортировка и слияние.
• Часть V. Типы индексов:
- Хеш-индекс;
- B-дерево;
- Индекс GiST;
- Индекс SP-GiST;
- Индекс GIN;
- Индекс BRIN.
➡️Скачать книгу.
#PostgreSQL
⚙️ PostgreSQL Database Security Assessment Tool.
• PGDSAT — инструмент для анализа безопасности PostgreSQL сервера. По факту работы данного инструмента мы получим объемный отчет с оценкой безопасности. Пример отчета можно посмотреть тут: https://www.darold.net/sample_pgdsat/report.html
➡️ Более подробное описание инструмента доступно на github: https://github.com/HexaCluster/pgdsat
#PostgreSQL
💻 90+ советов по работе с PostgreSQL.
• Список практических советов по работе с PostgreSQL от специалиста с 20-летним стажем. Ну и не забывайте про дополнительный материал по хэштегам, если Вам интересна какая-либо из тем.
➡️https://gitlab.com/postgres-ai/postgresql-consulting/postgres-howtos/
#PostgreSQL
💻 Postgres playground. Enhance your Postgres skills.
• Если Вы давно хотели прокачаться в PostgreSQL, то держите отличный ресурс для тренировок. Тут можно найти уроки, примеры команд и их описание, терминал, а так же куча другой полезной информации.
➡️https://www.crunchydata.com/developers/tutorials
#PostgreSQL
😟 О скрытых сообщениях в эмодзи и взломе казначейства США.
• 30 декабря 2024 года, пока большинство людей суетились в преддверии празднования Нового года, Казначейство США готовило для Финансового комитета Сената США важное уведомление. В нём сообщалось, что его системы, которые содержат особо чувствительные конфиденциальные данные, были взломаны группой правительственных хакеров Китая.
• И это ещё не самое безумное. Начнём с того, что это была старая добрая атака посредством внедренияSQL-кода. За защиту серверов казначейства отчасти отвечает инструмент управления привилегированным доступом (Privileged Access Management, PAM) компании Beyond Trust. К сожалению для них, сотрудники Beyond Trust были вынуждены сообщить эту новость правительству, поскольку именно их ПО хакеры использовали в качестве точки входа.
• Но на месте Beyond Trust могла оказаться любой другая компания, так как в основе уязвимости лежит PostgreSQL — одна из самых распространённых реляционных баз данных в мире. Как же так получилось, что в PostgreSQL более 9 лет просидела нераскрытой уязвимость нулевого дня? Причём ещё и уязвимость SQLi.
➡Оригинал.
➡Перевод.
#PostgreSQL#ИБ
#Python#Django#PostgreSQL
🐍
Building Web Applications with Django and PostgreSQL
This course is designed to provide you with a comprehensive understanding of how to develop web applications using the Django web framework in combination with the PostgreSQL database. Django is a popular web framework written in Python that allows developers to build robust and scalable web applications quickly and efficiently, while PostgreSQL is a powerful open-source relational database management system known for its reliability and performance.
📅 4/2023
🔗Link
-----
Main channel: @repo_science
Coupons: @freecoupons_reposcience
-----
🚨 Researchers found 9 cross-tenant flaws in #Google Looker Studio that could let attackers run arbitrary SQL queries on connected databases and access cloud data.
BigQuery, Sheets, #PostgreSQL, and other connectors were exposed.
🔗 Attack paths and affected services → https://thehackernews.com/2026/03/new-leakylooker-flaws-in-google-looker.html
💻 PostgreSQL. Учебные курсы.
Курсы для администраторов:
• DBA1. Администрирование PostgreSQL. Базовый курс;
• DBA2. Администрирование PostgreSQL. Настройка и мониторинг;
• DBA3. Администрирование PostgreSQL. Резервное копирование и репликация;
• QPT. Оптимизация запросов;
• PGPRO. Возможности Postgres Pro Enterprise.
Курсы для разработчиков приложений:
• DEV1. Разработка серверной части приложений PostgreSQL. Базовый курс;
• DEV2. Разработка серверной части приложений PostgreSQL. Расширенный курс;
• QPT. Оптимизация запросов;
• PGPRO. Возможности Postgres Pro Enterprise.
Курс для разработчиков СУБД:
• Hacking PostgreSQL.
#PostgreSQL#Курс
• Помимо бесплатных книг по изучению СУБД PostgreSQL и языку SQL, которые доступны по этой ссылке, у Postgres Pro есть еще и бесплатные курсы, которые доступны в формате видеоуроков и слайдов.
• Каждая тема курса состоит из теоретической части и практики. Теория состоит не только из презентации, но в большинстве случаев включает демонстрацию работы на «живой» системе. В практической части предлагается выполнить ряд заданий для закрепления пройденного. Материал поделен по темам таким образом, чтобы теоретическая часть не превышала часа, так как большее время значительно усложняет восприятие. Практика, как правило, не превышает 30 минут.
➡️ Все курсы доступны по этой ссылке: https://postgrespro.ru/education/courses
#SQL#PostgreSQL