Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Gilnet

[Resolvido] Problemas de conexão com SQLServer

Recommended Posts

Olá,

 

Estou com o seguinte problema.

Tempo limite expirado. O período de tempo limite foi atingido antes que fosse obtida uma conexão do pool. Isso pode ter ocorrido porque todas as conexões do pool estavam em uso e o tamanho máximo do pool foi atingido.

Isto está acontecendo por que tenho um loop que gera 12 mensalidades de 500 associados enviando para o banco e qundo rodo esse loop, passado um tempo parte das mensalidades são geradas e gravadas no banco e aí para o processamento e diz que houve erro.

 

Alguém ajuda ???

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

 

Pesquisando na net, encontrei a seguinte solução acrescentar na string de conexão Min Pool Size=5;Max Pool Size=250; Connect Timeout=3 fiz alguns testes e funcionou mas não se essa é a melhor solução. Aceito sugestões.

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como ja havia te falado as duas opções funcionam 100%.

essa que você viu via string de conexão: da uma lida em http://msdn.microsof...iontimeout.aspx

E via código: da uma lida em http://msdn.microsof...andtimeout.aspx.

 

Dependendo do tempo que a sua consulta demora, pode não ser suficiente por se tratar de uma página web... O fato é que a página web tem um timeout de 90 segundos por padrão, por isso, se a sua consulta demorar mais do que isso, não bastará apenas alterar o timeout do comando SQL... Terá que alterar também o timeout de execução da página através da propriedade ScriptTimeout da classe HttpServerUtility:

 

 

// Define o Timeout de execução da página ASPX

HttpServerUtility.ScriptTimeout = TimeSpan.FromMinutes(60).Seconds;

 

De qualquer forma, aumentar o timeout da execução dos comandos e/ou das páginas normalmente não é a melhor solução... Até porque você não quer deixar seu usuário esperando vários minutos pelo resultado de uma consulta...

 

O ideal mesmo é analisar o plano de execução da sua consulta e avaliar se está utilizando os índices corretamente, e ver o que é possível melhorar. Em última instância, pode ainda pensar em outras alternativas para obter essa consulta (replicação, processos batch, desnormalização, entre outros)... Texto retirado o forum MSDN: Caio Proiete

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.