Quando o tempo limite em ColdFusion ocorrer , um ou mais pedidos na fila não conseguiram chegar a piscina pedido em execução. Esta situação afeta negativamente o seu servidor como pedidos pendurar e anulam ou reiniciar. A boa notícia é que você pode substituir muitos pedidos de tempo limite , ajustando as configurações do servidor e fazendo algumas modificações tag . Change Request Timeout
Quando o formulário "Pedidos tempo após (segundos) " caixa está marcada , as solicitações que excedam o limite de tempo especificado serão cancelados. Abra a tela de "Administrador ColdFusion Server Settings " e defina o tempo limite de pedido de 30 segundos. Em seguida, você pode substituir a configuração de tempo limite Administrador ColdFusion para suas páginas mais longas. Para fazer isso , use o atributo timeout nas CFQUERY ou CFHTTP marcas , se você tem uma página com qualquer uma dessas tags. Alternativamente, atributo " requestTimeout " da tag cfsetting pode ser usado para substituir a configuração de tempo limite Administrador ColdFusion .
Ajuste threadWaitTimeout
O tempo limite de ajuste para threads na fila é a configuração threadWaitTimeout . Para substituir os pedidos , altere a configuração threadTimeout para 30 segundos. Você pode precisar de fazer mais ajustes , se necessário. A configuração threadTimeout deve ser definido como pelo menos o mesmo ou mais do que a definição RequestTimeout - a recomendação máxima é de 300 segundos. Solicitações de serviço sempre têm precedência sobre os pedidos em fila de espera , por isso, quando ajustando a configuração threadWaitTimeout , ter em conta quanto tempo um pedido vai esperar na fila para se tornar um pedido ativo antes que ela expire . A configuração threadWaitTimeout está no arquivo jrun.xml . Olhe-se no " jrun_root \\ JRun4 \\ servidores \\ cfusion \\ SERVER -INF " pasta para o arquivo jrun.xml se a configuração é uma instalação J2EE ; olhar em " cf_root \\ CFusionMX \\ runtime \\ servers \\ default \\ SERVER- INF " se é uma instalação de configuração do servidor .
Verifique doSomething.cfm Cronometragem
Tempos limite para a página doSomething.cfm em ColdFusion pode variar com base em como o atributo timeout da sua cfquery está definido . Se os tempos de página doSomething fora , você pode receber uma mensagem de erro no arquivo application.log que lê :
"Erro ", " jrpp -19 ", " 04/14/04 " , " . ; 10:34:02 " ," o pedido excedeu o limite de tempo permitido Tag: cfloop a seqüência especificada de arquivos incluídos ou processado é: C: Apache2048 \\ Apache2 \\ htdocs \\ shaws_ora \\ doSomething.cfm " < br >
Se você ver essa mensagem de erro ou um semelhante a ele , use a função GetTickCount ( ) para localizar código lento e tentar otimizar o desempenho da página.
Avisos e Considerações
Alterar o código pode não funcionar em todas as situações. Algumas tags em ColdFusion não são afetados pelas configurações modificadas , que incluem CFFTP , cfexecute , dfobject , CFSTOREDPROC e cfcontent . ColdFusion espera até que as ações dessas marcas estão concluídas e , em seguida, ele verifica se há um Pedido Timeout. Se não for recebido dentro das configurações do temporizador especificados , a thread irá travar e reiniciar .