8 pontos por xguru 2026-01-29 | Ainda não há comentários. | Compartilhar no WhatsApp
  • Microsserviço em formato sidecar projetado para detectar em tempo real o estado de clusters PostgreSQL
  • Permite verificar imediatamente se o host está ativo, se é master ou réplica e o tempo de atraso da réplica
  • Estrutura leve e de alto desempenho: uso de memória de cerca de 9MiB e baixa carga de CPU por requisição, processando até 9000 requisições por segundo
  • Todos os dados são fornecidos por meio de respostas baseadas em memória, minimizando a latência das requisições
  • Em segundo plano, consulta periodicamente o estado dos hosts PostgreSQL e expõe os resultados via API HTTP (respostas Plain/JSON)
  • Principais endpoints da API
    • /master: retorna o host master atual
    • /replica: retorna uma réplica selecionada pelo algoritmo round-robin
    • /sync_by_time, /sync_by_bytes: retorna uma réplica com base no estado de sincronização por tempo ou bytes
    • /hosts: lista o estado de todos os hosts (JSON)
    • /status: consulta o estado detalhado de um host específico
  • Configuração baseada em variáveis de ambiente: permite controle detalhado de timeout de conexão, limite de atraso permitido, intervalo de polling e mais
  • Design lock-free com um único writer e múltiplos readers, para respostas de leitura rápidas e manutenção de dados atualizados
    • Aceita a possibilidade de inconsistência temporária dos dados em troca de otimização da velocidade de resposta
  • Registra no stdout/stderr os eventos de início e encerramento do serviço e as mudanças de estado, exibindo em tempo real failover, recuperação e mudanças no estado de sincronização
  • É possível simular cenários de troca entre master e réplica com base em proxy

Ainda não há comentários.

Ainda não há comentários.