peguei um leak de goroutine na nossa aplicação aqui usando a ferramenta do uber: https://github.com/uber-go/goleak.
Antes, picos de 300 goroutines, agora picos de 75 😱.
No nosso caso, o que ocasionou foi o uso de unbuffered channels nas goroutines com early return na sequência
#bolhatech
Antes, picos de 300 goroutines, agora picos de 75 😱.
No nosso caso, o que ocasionou foi o uso de unbuffered channels nas goroutines com early return na sequência
#bolhatech
Comments
cc @sseraphini.bsky.social
Basicamente, só troquei os unbuffered channels por buffered channels e voilà. Simples, mas eficaz
https://betterprogramming.pub/the-silent-killer-thats-crashing-your-coroutines-9171d1e8f79b
esses dias tava com um memory leak, mas a gente decidiu não investigar mais a fundo pq era bem lento. demorava umas 7h pro pod crashar e os nossos pods já são trocados a cada 8h mesmo, aí deixamos por isso