Categoria

Golang

Retry policies e backoff exponencial
Golang

Retry policies e backoff exponencial

Em sistemas distribuídos, falhas são inevitáveis. Redes instáveis, picos de tráfego e serviços temporariamente indisponíveis fazem parte do dia a dia de qualquer aplicação que se comunica com outros serviços. Retry policies são estratégias que definem como e quando devemos repetir uma operação que falhou.

05/05/2026
Roteamento e middlewares sem framework
Golang 05/05/2026

Roteamento e middlewares sem framework

O pacote net/http da biblioteca padrão do Go fornece tudo que precisamos para construir servidores web robustos sem frameworks externos. A interface central é o http.Handler:

Profiling com pprof
Golang 05/05/2026

Profiling com pprof

Profiling é o processo de medição dinâmica do comportamento de um programa durante sua execução, coletando dados sobre uso de CPU, memória, concorrência e outros recursos. Em Go, o profiling é essencial para identificar gargalos de performance, vazamentos de memória e problemas de concorrência antes que eles afetem usuários em produção.

Rate limiting com token bucket ou leaky bucket
Golang 05/05/2026

Rate limiting com token bucket ou leaky bucket

Rate limiting é uma técnica essencial para controlar a taxa de requisições em sistemas distribuídos. Sem ele, serviços podem ser sobrecarregados por picos de tráfego, ataques DDoS ou clientes mal comportados. Em Go, a concorrência nativa com goroutines torna o rate limiting ainda mais relevante, pois precisamos proteger recursos compartilhados em ambientes altamente paralelos.

Passagem por valor vs por ponteiro
Golang 05/05/2026

Passagem por valor vs por ponteiro

Em Go, tudo é passado por valor. Quando você passa um argumento para uma função, uma cópia do valor original é criada. Isso é verdade para tipos primitivos como int, string e bool:

pgx: driver nativo para PostgreSQL
Golang 05/05/2026

pgx: driver nativo para PostgreSQL

O pgx é um driver puramente Go para PostgreSQL que se destaca por ser implementado diretamente sobre o protocolo nativo do banco, sem depender de bibliotecas C externas como o libpq. Desenvolvido por Jack Christensen, o pacote github.com/jackc/pgx/v5 oferece acesso completo às funcionalidades específicas do PostgreSQL que o padrão database/sql não consegue expor.

Ponteiros: endereços de memória sem aritmética
Golang 05/05/2026

Ponteiros: endereços de memória sem aritmética

Em Go, um ponteiro é uma variável que armazena o endereço de memória de outra variável. Diferente de linguagens como C, Go não permite aritmética de ponteiros, garantindo segurança de tipo e evitando acessos indevidos à memória.

Operadores e expressões
Golang 05/05/2026

Operadores e expressões

Go oferece os operadores aritméticos básicos: soma (+), subtração (-), multiplicação (*), divisão (/) e módulo (%). Um ponto crucial é o comportamento da divisão entre inteiros: