PgDoorman vs TiCDC
PgDoorman
ozontech.github.ioTiCDC
docs.pingcap.comSide by side
| Figure | PgDoorman | TiCDC |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | — | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Database Proxy Software | 7.5 (#18) | 8.1 (#6) |
| Deployment | PgDoorman can be built from source, installed from distribution packages, or downloaded as a prebuilt binary; Docker is intended for development, CI, and demos rather than production. | TiCDC can be deployed with a new TiDB cluster or added to an existing cluster using TiUP. |
| High availability | Patroni-assisted fallback can direct new backend connections to another live cluster member when the local PostgreSQL server disappears during a switchover. | TiCDC has no single point of failure and supports dynamically adding or deleting TiCDC nodes. |
| What it does | PgDoorman is a multithreaded PostgreSQL connection pooler written in Rust and described as a drop-in replacement for PgBouncer and Odyssey. | TiCDC captures TiKV change logs, orders them, and exports row-level incremental changes from TiDB to downstream systems. |
Plans
In their own words
PgDoorman
PgDoorman is a free, open-source, self-hosted PostgreSQL connection pooler written in Rust. It is described as a drop-in replacement for PgBouncer and Odyssey, and supports PostgreSQL 10 and newer on Linux or macOS. Listed capabilities include connection pooling, load balancing, and automatic failover; query routing is not supported. The pool coordinator enforces per-database connection caps and can reclaim idle capacity from pools with spare connections. Patroni-assisted fallback can direct new connections to another live cluster member during a switchover. Monitoring includes a Prometheus endpoint and an optional local diagnostic console for pool, latency, error, query, log, CPU, and memory information. Authentication includes MD5 or SCRAM passthrough, auth_query, PAM, JWT, Talos JWT, and pg_hba.conf rules. TLS is supported for client and backend connections. It can be built from source, installed from packages, or downloaded as a binary.
TiCDC
TiCDC is a free, open-source, self-hosted tool for replicating incremental data changes from TiDB. It captures TiKV change logs, sorts the changes, and exports row-based data to systems including TiDB, MySQL-compatible databases, Kafka, Amazon S3, GCS, Azure Blob Storage, and NFS. Recommended Kafka formats include Canal-JSON, Avro, and Debezium. Filters can select databases, tables, DMLs, and DDLs, while the Open API can check task status, change task configuration, and create or delete tasks. TiCDC supports replication between TiDB clusters for disaster recovery, with second-level RPO and minute-level RTO, as well as bidirectional replication for multi-active deployments. It can be deployed with a new cluster or added to an existing one; production guidance recommends at least two instances. The system has no single point of failure and allows nodes to be added or removed dynamically. Delivery is at least once, so failures can lead to repeated statements or Kafka messages.