- BrainTools - https://www.braintools.ru -

20 октября 2025 года состоялся [1] первый мажорный выпуск pgbalancer [2]. Это балансировщик нагрузки PostgreSQL на основе искусственного интеллекта [3] с REST API и MQTT [4]. Исходный код инструмента написан на языке C и опубликован [5] под открытой лицензией PostgreSQL.

По информации [6] OpenNET, проект Pgbalancer обеспечивает обработку пула соединений и балансировку нагрузки для PostgreSQL, управляется по протоколу HTTP и поддерживает потоковую передачу событий в режиме реального времени. Решение создано как форк pgpool‑II [7] с улучшениями и дополнениями для умной маршрутизации запросов.
Основные возможности и особенности pgbalancer 1.0:
пул соединений и балансировка нагрузки;
автоматическое аварийное переключение с поддержкой сторожевого таймера watchdog;
мониторинг работоспособности и кэширование запросов;
аутентификация SSL/TLS, PAM/LDAP;
совместимость с PostgreSQL 13-18;
является частью утилит pgElephant [8], обеспечивающих высокую доступность. Может интегрироваться с pgraft [9] для Raft‑консенсуса, поддерживается мониторинг pgSentinel [10];
балансировка нагрузки на базе ИИ:
алгоритмы машинного обучения [11] для умной маршрутизации запросов;
обучение подстраивается в зависимости от времени отклика запросов и состояния ресурсов сервера;
оценивается состояние в реальном времени и предсказывается балансировка запросов;
настраиваемые параметры весов для скорости обучения и скорости предположений случайных событий;
возможность интеграции с платформами мониторинга Prometheus и Grafana.
управление через REST API:
17 функций HTTP/JSON для полного управления кластером;
Интегрированный сервер API, работающий на порту 8080;
Аутентификация токенами JWT HMAC‑SHA256;
Получение статистик и метрик состояния режима исполнения;
Время отклика менее 10 мс.
потоковая передача событий MQTT:
MQTT используется для публикации изменений состояния узлов, аварийного переключения и проверок состояния ресурсов в реальном времени;
Можно настроить топики MQTT для различных типов событий;
Интеграция с Mosquitto, EMQX или любым MQTT‑брокером;
Обеспечивает автоматическое оповещение о нештатных событиях и предоставляет транспортный канал для оркестровки кластера.
утилита командной строки bctl:
единый интерфейс, заменяющий более 10 отдельных команд “pcp_*”;
3 формата вывода: таблицы, JSON или формат без изменений;
вывод отформатированных таблиц с обрамлением для runtime-данных pgbalancer;
удалённое управление и режим расширенного вывода.
GitHub Actions Workflow:
build-matrix.yml: Сборки на нескольких платформах (Ubuntu, macOS, Rocky Linux);
Поддержка PostgreSQL 13-18;
DEB-пакеты для Ubuntu 22.04/24.04, Debian 11/12;
RPM-пакеты для Rocky 9, AlmaLinux 9, CentOS Stream 9;
поддержка Autotools с интеграцией autoreconf;
docs.yml: Развёртывание документации GitHub Pages.

Автор: denis-19
Источник [12]
Сайт-источник BrainTools: https://www.braintools.ru
Путь до страницы источника: https://www.braintools.ru/article/21338
URLs in this post:
[1] состоялся: https://github.com/pgElephant/pgBalancer/releases/tag/v1.0.0
[2] pgbalancer: https://www.pgelephant.com/pgbalancer
[3] интеллекта: http://www.braintools.ru/article/7605
[4] MQTT: https://ru.wikipedia.org/wiki/MQTT
[5] опубликован: https://github.com/pgElephant/pgBalancer
[6] информации: https://www.opennet.ru/opennews/art.shtml?num=64140
[7] pgpool‑II: https://www.pgpool.net/
[8] pgElephant: https://github.com/pgElephant
[9] pgraft: https://github.com/pgElephant/pgraft
[10] pgSentinel: https://github.com/pgsentinel/pgsentinel
[11] обучения: http://www.braintools.ru/article/5125
[12] Источник: https://habr.com/ru/news/961522/?utm_source=habrahabr&utm_medium=rss&utm_campaign=961522
Нажмите здесь для печати.