awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
postgresml avatar

postgresml/pgcat

0
View on GitHub↗
3,966 stars·265 forks·Rust·MIT·5 vues

Pgcat

Pgcat est une solution de middleware PostgreSQL offrant le pooling de connexions, le sharding, l'équilibrage de charge et la gestion du basculement (failover). Il fonctionne comme un proxy qui optimise l'utilisation des ressources et la scalabilité en gérant les sessions de base de données et en distribuant les requêtes sur plusieurs instances.

Le système se distingue par le mirroring de trafic, qui duplique les requêtes de production en temps réel vers des bases de données de test pour validation. Il implémente également un proxy de sharding pour distribuer les données et les requêtes sur plusieurs instances de base de données en fonction de clés de sharding.

Le projet assure la haute disponibilité grâce au basculement automatisé et à la surveillance de l'état des serveurs. Il inclut le routage de trafic pour séparer les opérations de lecture et d'écriture, le chiffrement TLS pour les communications, et une base de données administrative virtuelle pour la gestion du système et l'exportation de métriques de performance.

Le service est packagé sous forme de conteneur Docker pour garantir un déploiement cohérent dans différents environnements.

Features

  • PostgreSQL Pool Managers - Manages a pool of database connections specifically tailored for the PostgreSQL wire protocol to optimize resource usage.
  • Database Connection Pooling - Manages a pool of reusable backend sessions to reduce the overhead of establishing new database connections.
  • SQL Comment Based Routing - Routes queries to specific data partitions using sharding keys extracted from SQL comments or hashing functions.
  • Query Routing - Directs queries to specific data partitions using automatic key detection, SQL comments, or custom syntax.
  • Horizontal Database Scaling - Distributes data across multiple database instances to scale storage and throughput through horizontal expansion.
  • PostgreSQL Database Sharding - Splits data across multiple PostgreSQL servers to scale storage and processing by routing queries via sharding keys.
  • PostgreSQL Load Balancers - Provides a protocol-aware proxy to distribute read queries across multiple PostgreSQL backend instances.
  • Traffic Routing - Analyzes incoming SQL to automatically direct read-only requests to replicas and write operations to the primary server.
  • Replica Load Balancers - Distributes incoming queries across a cluster of available replicas to prevent single-instance bottlenecks.
  • Read Load Balancers - Distributes read requests across multiple replicas using random or least-connection algorithms.
  • Sharding Proxies - Acts as a routing layer that distributes queries across multiple database instances based on sharding keys.
  • Database Failover Routers - Redirects traffic to a healthy standby instance when a primary node becomes unavailable to maintain uptime.
  • Database High Availability - Coordinates PostgreSQL nodes to ensure continuous service availability through automated failover and health monitoring.
  • Database Failover Management - Monitors backend server health and automatically reroutes traffic to standby instances during primary node failure.
  • Health-Based Traffic Rerouting - Monitors backend server availability via periodic probes and automatically reroutes traffic away from unresponsive nodes.
  • Upstream Health Monitoring - Performs periodic health checks on backend servers and temporarily blocks unresponsive nodes to ensure stability.
  • Database Query Mirroring - Duplicates incoming production queries to test databases to validate new versions or warm up caches.
  • Database Connection Encryption - Encrypts communication between clients, the proxy, and database servers using TLS certificates.
  • Database Authentication - Validates client identities using secure hashing or external query passthrough to manage database access.
  • Transport Layer Security - Secures data in transit between clients and backend servers using certificates and private keys.
  • Administrative Command Engines - Executes system management tasks and inspects pool status through a dedicated administrative interface.
  • Virtual Administrative Databases - Provides a dedicated virtual administrative database for executing system commands and inspecting pool health.

Historique des stars

Graphique de l'historique des stars pour postgresml/pgcatGraphique de l'historique des stars pour postgresml/pgcat

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Pgcat

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Pgcat.
  • pgdogdev/pgdogAvatar de pgdogdev

    pgdogdev/pgdog

    3,361Voir sur GitHub↗

    pgdog is a PostgreSQL sharding proxy, distributed SQL router, and connection pooler. It is designed to enable horizontal data distribution by splitting tables and indices across multiple independent servers to scale storage and processing capacity. The project distinguishes itself through online resharding capabilities, using logical replication to move data between shards without application downtime. It supports multiple routing strategies, including hash, list, and range-based query routing, and manages distributed atomic transactions using a two-phase commit process to ensure consistency

    Rustload-balancerpoolerpostgresql
    Voir sur GitHub↗3,361
  • alibaba/alisqlAvatar de alibaba

    alibaba/AliSQL

    5,706Voir sur GitHub↗

    AliSQL is a fork of MySQL by Alibaba that extends the relational database management system with enhancements for high performance, scalability, and enterprise-grade availability. It retains the core MySQL identity as a SQL-based database for storing, organizing, and retrieving structured data, while adding optimizations for large-scale transactional and analytical workloads. The project differentiates itself through a set of Alibaba-specific improvements, including a columnar engine for accelerating analytical queries directly on MySQL tables, and a distributed, shared-nothing NDB Cluster en

    C++alisqldatabaseduckdb
    Voir sur GitHub↗5,706
  • sysown/proxysqlAvatar de sysown

    sysown/proxysql

    6,843Voir sur GitHub↗

    ProxySQL is a database proxy designed to route and balance traffic between applications and MySQL or PostgreSQL servers. It provides database high availability by monitoring backend server health and automatically rerouting traffic to healthy nodes during failover events to prevent downtime. The system integrates with generative AI models by proxying requests through a protocol handler, creating a bridge that allows large language models to access structured data. The project includes capabilities for traffic management through automatic failover routing and cluster topology discovery. It op

    C++
    Voir sur GitHub↗6,843
  • flike/kingshardAvatar de flike

    flike/kingshard

    6,414Voir sur GitHub↗

    Kingshard is a MySQL database proxy and sharding middleware that routes SQL traffic between clients and multiple database nodes. It functions as a load balancer, read-write splitter, and SQL query firewall to manage how data is accessed and distributed across a database infrastructure. The system implements data sharding using hash, range, or date strategies to split tables across multiple nodes. It enables read-write splitting by directing data modification requests to a master node while distributing read-only queries across a pool of slave replicas. The proxy provides traffic management t

    Gokingshardmysqlmysql-proxy
    Voir sur GitHub↗6,414
Voir les 30 alternatives à Pgcat→

Questions fréquentes

Que fait postgresml/pgcat ?

Pgcat est une solution de middleware PostgreSQL offrant le pooling de connexions, le sharding, l'équilibrage de charge et la gestion du basculement (failover). Il fonctionne comme un proxy qui optimise l'utilisation des ressources et la scalabilité en gérant les sessions de base de données et en distribuant les requêtes sur plusieurs instances.

Quelles sont les fonctionnalités principales de postgresml/pgcat ?

Les fonctionnalités principales de postgresml/pgcat sont : PostgreSQL Pool Managers, Database Connection Pooling, SQL Comment Based Routing, Query Routing, Horizontal Database Scaling, PostgreSQL Database Sharding, PostgreSQL Load Balancers, Traffic Routing.

Quelles sont les alternatives open-source à postgresml/pgcat ?

Les alternatives open-source à postgresml/pgcat incluent : pgdogdev/pgdog — pgdog is a PostgreSQL sharding proxy, distributed SQL router, and connection pooler. It is designed to enable… alibaba/alisql — AliSQL is a fork of MySQL by Alibaba that extends the relational database management system with enhancements for high… sysown/proxysql — ProxySQL is a database proxy designed to route and balance traffic between applications and MySQL or PostgreSQL… flike/kingshard — Kingshard is a MySQL database proxy and sharding middleware that routes SQL traffic between clients and multiple… vonng/pigsty — Pigsty is a comprehensive database infrastructure orchestration platform designed to automate the full lifecycle of… qihoo360/atlas — Atlas is a MySQL database proxy and middleware system designed to manage traffic between clients and database…