Por que as conexões não estão sendo reutilizadas no meu aplicativo iSeries / ASP.NET MVC 4?
Estamos executando um aplicativo da Web MVC 4 em um farm de servidores do Windows 2008. Temos tentado atualizar nosso farm de servidores para servidores Windows 2008 R2 de 64 bits, mas enfrentamos um problema com o pool de conexões em um iSeries (executando o V7R1). Frequentemente chamamos procedimentos armazenados do DB2 java e ativamos o pool de conexões para reduzir o tempo necessário para estabelecer conexões. Abaixo está um exemplo da string de conexão que estamos usando.
<add name="DB2" connectionString="ConnectionTimeout=45;Pooling=true;MinimumPoolSize=1;MaximumPoolSize=-1;MaximumUseCount=100;CheckConnectionOnOpen=true;DataSource=XXX;Naming=SQL;DataCompression=True;UserID=username;password=pwd;DefaultCollection=XXX" />
Desde a versão 2008R2, o número de conexões (trabalhos QZDASOINIT) aumenta constantemente no iSeries, prejudicando o desempenho no iSeries e, portanto, na nossa aplicação. O código base éexatamente o mesmo que foi nos servidores de 32 bits de 2008. Temos a plataforma de destino definida para qualquer CPU e ter “Ativar aplicativos de 32 bits” definido como True no IIS. Tentamos fazer o upgrade para esses servidores no início do mês e a redefinição do IIS não matou automaticamente as conexões na caixa como deveria e não criaria novas até que voltássemos completamente aos nossos servidores mais antigos.
Quase parece que não é pegar conexões que foram feitas e continuamente cria novas. Alguém sabe se há um passo que perdemos quando atualizando para 32 bits para 64 bits quando se trata de pool de conexão com um iSeries?