pg_auto_failover
odyssey
pg_auto_failover | odyssey | |
---|---|---|
14 | 14 | |
1,035 | 3,099 | |
0.7% | 0.4% | |
6.4 | 8.4 | |
3 months ago | 6 days ago | |
C | C | |
GNU General Public License v3.0 or later | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
pg_auto_failover
- 11 Years of Hosting a SaaS
- Streamlining High Availability in PostgreSQL, a Simpler Alternative
-
Why PostgreSQL High Availability Matters and How to Achieve It
pg_auto_failover makes it an absolute breeze. I cannot understand how it's not mentioned in the article.
I've been runnning it for 3 years with great success - https://github.com/hapostgres/pg_auto_failover/discussions/6...
-
Can someone share experience configuring Highly Available PgSQL?
Simplified and probably OK: pg_auto_failover - One Monitor/Witness node and minimum services otherwise. Good documentation to get started and not nearly as complex as Patroni.
-
PG redundancy even in majority failure
There are tools that make managing such a system easier. Check out patroni, pg_auto_failover or PAF
- Just Use Postgres for Everything
-
The C++ Asynchronous Framework
This is /extremely/ uncharitable. It depends more on the project.
For example, both Go and .NET are very well written with comprehensible documentation. Many projects have also been absorbed by the Apache Foundation or other FOSS initiatives.
Every FANG has boat loads of teams working on umpteen different open source packages. The quality naturally varies.
Let me pick two more esoteric projects as a point of comparison.
Yandex Odyssey (https://github.com/yandex/odyssey) an advanced multi-threaded PostgreSQL connection pooler and request router. Figuring out how exactly and when to use this is not quite clear. There is no "getting started" guide for this package. There is barely any explanation for how it works or what it does.
pg_auto_failover (https://github.com/citusdata/pg_auto_failover) run by Citus (owned by Microsoft) monitors and manages automated failover for a Postgres cluster. This repo even has diagrams explaining the workflow and complete instructions.
-
Do you use Percona Distribution for PostgreSQL? How is it working for you?
Right, https://github.com/citusdata/pg_auto_failover has been on my reading list
-
Simpler Postgresql replication setup (NO managed services)
My go to for this is https://github.com/citusdata/pg_auto_failover set up with ansible https://github.com/neuroforgede/pg\_auto\_failover\_ansible
-
pg_auto_failover ile PostgreSQL Cluster Kurulumu
pg_auto_failover github | readthedocs | ytube
odyssey
- Open sourcing our fork of PgBouncer
-
The C++ Asynchronous Framework
This is /extremely/ uncharitable. It depends more on the project.
For example, both Go and .NET are very well written with comprehensible documentation. Many projects have also been absorbed by the Apache Foundation or other FOSS initiatives.
Every FANG has boat loads of teams working on umpteen different open source packages. The quality naturally varies.
Let me pick two more esoteric projects as a point of comparison.
Yandex Odyssey (https://github.com/yandex/odyssey) an advanced multi-threaded PostgreSQL connection pooler and request router. Figuring out how exactly and when to use this is not quite clear. There is no "getting started" guide for this package. There is barely any explanation for how it works or what it does.
pg_auto_failover (https://github.com/citusdata/pg_auto_failover) run by Citus (owned by Microsoft) monitors and manages automated failover for a Postgres cluster. This repo even has diagrams explaining the workflow and complete instructions.
-
Postgres Connection Pooling and Proxies
Odyssey, developed by Yandex, is a newer solution for pooling. While Pgbouncer is a single-threaded pooler, Odyssey supports multi-core and multi-threaded processing. The tool has the following features:
- PgCat: Postgres pooler with sharding, load balancing and failover support
- GitHub - yandex/odyssey: Scalable PostgreSQL connection pooler
- Scalable PostgreSQL connection pooler
- yandex/odyssey: Scalable PostgreSQL connection pooler - Advanced multi-threaded PostgreSQL connection pooler and request router.
- Scalable PostgreSQL Connection Pooler
What are some alternatives?
patroni - A template for PostgreSQL High Availability with Etcd, Consul, ZooKeeper, or Kubernetes
pgbouncer - lightweight connection pooler for PostgreSQL
citus - Distributed PostgreSQL as an extension
pgbouncer-fast-switchover - Adds query routing and rewriting extensions to pgbouncer
orchestrator - MySQL replication topology management and HA
pgcat - PostgreSQL pooler with sharding, load balancing and failover support.
postgresql_cluster - PostgreSQL High-Availability Cluster (based on "Patroni" and DCS "etcd" or "consul"). Automating with Ansible.
pgcat - PostgreSQL pooler with sharding, load balancing and failover support. [Moved to: https://github.com/postgresml/pgcat]
plv8 - V8 Engine Javascript Procedural Language add-on for PostgreSQL
pgagroal - High-performance connection pool for PostgreSQL
discussion
pgbouncer_exporter - Prometheus exporter for PgBouncer