PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Configuração correta do pool de conexão de banco de dados database.yml para aplicativos Rails de thread único


Muito tarde para a festa aqui, mas fiquei sem conexões de banco de dados hoje em produção.

Como muitas pessoas, uso o Sidekiq para realizar trabalhos assíncronos, como enviar e-mails, por exemplo. É importante observar que o Sidekiq é executado como um processo multithread.

Então, eu não apenas tem um aplicativo Rails single-thread, portanto, esta resposta não se aplica diretamente à pergunta feita, mas achei que valia a pena dizer algo aqui, pois acho que aplicativos Rails multithread são relativamente normais hoje em dia.

Isso significa que você precisa ajustar o tamanho do pool de forma a criar conexões suficientes para lidar com todos os trabalhos que podem ser enfileirados e levar mais de 5 segundos (o período de tempo limite padrão para aguardar uma conexão de banco de dados antes de gerar um erro).