Sobre o projeto

HA é um cluster SQLite de alta disponibilidade alimentado por um servidor NATS JetStream incorporado. Ele fornece bancos de dados SQLite distribuídos com replicação, suportando múltiplos protocolos para integração perfeita. Os recursos incluem: - Múltiplos protocolos: API HTTP, API gRPC, driver Go database/sql, driver JDBC, MySQL Wire Protocol e PostgreSQL Wire Protocol. - Replicação via servidor NATS incorporado ou externo. - Réplicas de leitura/escrita com driver go-ha, réplicas de leitura com extensão SQLite ha-sync. - Change Data Capture (CDC) para streaming de dados em tempo real. - Proxy e replicação de bancos de dados PostgreSQL, MySQL ou suportados pelo Debezium. - Modos de cluster: baseado em líder ou sem líder com resolução de conflitos personalizada. - Consultas entre shards usando dicas SQL. - Operações de desfazer transações. As opções de instalação incluem binários pré-compilados, compilação a partir do código-fonte com Go 1.27+, Docker e Helm charts para Kubernetes. O início rápido envolve iniciar múltiplas instâncias HA e conectar via vários clientes. A configuração é feita por meio de flags de linha de comando. O projeto inclui um cliente HA integrado com comandos especiais para gerenciamento de banco de dados e operações de transação. Ele também suporta proxy e replicação de bancos de dados externos. A documentação da API está disponível online, e contribuições são bem-vindas sob a licença Apache 2.0.