Meça espera e uso de conexões
Compare conexões ativas, ociosas e em espera com volume e latência das solicitações no mesmo período. Se possível, divida por instância ou carga para encontrar quem está mantendo conexões ocupadas por muito tempo.
Inspecione duração das consultas e limites das transações. Uma transação que inclui chamadas de rede ou outro processamento pode prender a conexão além do trabalho no banco; garanta liberação em sucesso, erro e cancelamento.
Altere a capacidade com cuidado
Depois de identificar o gargalo, ajuste juntos os limites do pool e do banco usando concorrência observada e capacidade segura. Reavalie memória, CPU, latência e filas sob carga representativa.
Crie alertas para esperas persistentes e esgotamento, e documente a resposta. Se a saturação começou após implantação ou mudança de tráfego, compare com a versão anterior antes de elevar limites.