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

По информации OpenNET, проект Pgbalancer обеспечивает обработку пула соединений и балансировку нагрузки для PostgreSQL, управляется по протоколу HTTP и поддерживает потоковую передачу событий в режиме реального времени. Решение создано как форк pgpool‑II с улучшениями и дополнениями для умной маршрутизации запросов.

Основные возможности и особенности pgbalancer 1.0:

  • пул соединений и балансировка нагрузки;

  • автоматическое аварийное переключение с поддержкой сторожевого таймера watchdog;

  • мониторинг работоспособности и кэширование запросов;

  • аутентификация SSL/TLS, PAM/LDAP;

  • совместимость с PostgreSQL 13-18;

  • является частью утилит pgElephant, обеспечивающих высокую доступность. Может интегрироваться с pgraft для Raft‑консенсуса, поддерживается мониторинг pgSentinel;

  • балансировка нагрузки на базе ИИ:

    • алгоритмы машинного обучения для умной маршрутизации запросов;

    • обучение подстраивается в зависимости от времени отклика запросов и состояния ресурсов сервера;

    • оценивается состояние в реальном времени и предсказывается балансировка запросов;

    • настраиваемые параметры весов для скорости обучения и скорости предположений случайных событий;

    • возможность интеграции с платформами мониторинга 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.