[MASOCH-L] IIS - ASP - ScriptTimeout

Marcelo Coelho marcelo at tpn.com.br
Tue May 31 12:09:51 BRT 2005


Esta talvez seja a melhor solução, detectar quem está utilizando 100% de CPU
e bloquear ou banir os que fazem o mau uso do servidor. Alguém conhece algum
programa que faça este trabalho?

Detectar é um problemão, pois no IIS 5, vários sites utilizam o mesmo
processo DLLHOST.EXE, então se este processo específico bate 100% de CPU,
não temos como determinar qual site está utilizando 100% de CPU. Para isso,
seria necessário isolar cada website para cada um ter seu DLLHOST.EXE, o que
é algo inviável.

No IIS 6 é possível agrupar sites em processos DLLHOST.EXE, mas isso ainda
não é suficiente, pois no máximo determinaríamos "qual" grupo de sites está
batendo 100% de CPU e não qual site em específico.

--
Marcelo Coelho
marcelo at tpn.com.br




----- Original Message ----- 
From: "Carlos Felipe G. dos Santos" <cfelipe at infocorp.com.br>
To: "'Mail Aid and Succor, On-line Comfort and Help'"
<masoch-l at eng.registro.br>
Sent: Tuesday, May 31, 2005 11:42 AM
Subject: RE: [MASOCH-L] IIS - ASP - ScriptTimeout


Caro Marcelo,

Limitar o ScriptTimeOut não é a solução. É fácil listar várias situações em
que ele tem que ser alto, e nem por isso levará a CPU a 100%.
Seu problema não é novo, e vários provedores já passaram por esta situação.
Não sei se o IIS6 implementa um novo mecanismo que permita o que você quer,
nos anteriores não há solução por configuração do IIS. Afinal como
determinar que um código vai ser eficiente ou não? Problema interessante,
mas difícil de resolver.
A solução dada a este problema, implementada em vários provedores entre eles
a Locaweb, é usar um programa que detecta scripts com 100% de CPU, e em
certas circunstâncias bloquear a sua execução (mudando as permissões).
Assim o programador não fica restrito a um ScriptTimeOut único, mas é
penalizado quando faz mal o seu trabalho.
Em tempo, não tenho um programa destes para lhe ceder, mas uma implementação
possível seria usando o MTS.

Um abraço,
Carlos Felipe.

|-----Original Message-----
|From: masoch-l-bounces at eng.registro.br
|[mailto:masoch-l-bounces at eng.registro.br] On Behalf Of Marcelo
|Coelho
|Sent: Monday, May 30, 2005 5:33 PM
|To: Mail Aid and Succor, On-line Comfort and Help
|Subject: [MASOCH-L] IIS - ASP - ScriptTimeout
|
|Olá Pessoal.
|
|Uma das dores de cabeça para quem oferece hospedagem
|compartilhada Windows usando IIS são os scripts mal feitos. No
|IIS, temos a opção ScriptTimeOut, porém via programação ASP,
|um programador pode setar Server.ScriptTimeout e alterar o
|parâmetro, sobregravando a informação setada no IIS.
|
|Scripts mal feitos podem consumir 100% de CPU. Um LOOP
|infinito numa leitura de banco de dados simplesmente trava o
|processamento das demais páginas, até que o TimeOut do script
|tenha sido atingido.
|
|Isso sem falar nos malandrinhos que querem enviar 100.000
|e-mails usando um script ASP e setam o timeout em 9999999 segundos.
|
|Claro que o IIS não sabe como diferenciar código bom de código
|ruim, mas existe algo que pode ser feito para se proteger ou
|minimizar o problema?
|
|Eu já pesquisei muito sobre o assunto, tudo que encontrei foi
|o IISTracer, que serve para monitorar o que está rodando no
|momento e possivelmente detectar quem está rodando o script,
|mas não serve para conter o problema de forma preventiva.
|
|Será que há solução para este tipo de problema?
|
|Obrigado. Um abraço a todos.
|
|--
|Marcelo Coelho
|marcelo at tpn.com.br
|
|
|
|
|__
|masoch-l list
|https://eng.registro.br/mailman/listinfo/masoch-l
|

__
masoch-l list
https://eng.registro.br/mailman/listinfo/masoch-l



More information about the masoch-l mailing list