ID do artigo: 919790 - Última revisão: domingo, 8 de fevereiro de 2009 - Revisão: 4.1

Como usar a ferramenta IIS Debug Diagnostic para solucionar problemas de um vazamento de memória um processo do IIS

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Recolher tudo

INTRODUÇÃO

Um vazamento de memória pode ocorrer no Microsoft Internet Information Services (IIS) quando um processo do IIS consome memória excessiva. Inetinfo.exe, Dllhost.exe e W3wp.exe são exemplos de processos do IIS. IIS armazena em cache o conteúdo estático e dinâmico conteúdo. Normalmente, um processo do IIS usa até 50 por cento da memória física disponível. Essa métrica de uso de memória se refere a cada processo do IIS, não para um total de todos os processos do IIS. Você pode usar essas informações e o Monitor de desempenho para identificar um problema de memória.

Além disso, os seguintes sintomas podem ocorrer quando um processo do IIS consome memória excessiva:
  • No Gerenciador de tarefas do Windows, a coluna de Uso de memória indica que o processo consome memória excessiva.
  • No Monitor de desempenho, a diferença aumenta entre o contador Private Bytes e o contador de Bytes virtuais do objeto de processo .
  • No IIS 6.0, um processo do IIS usa até 1,3 gigabytes (GB) de memória virtual. Se a reciclagem de memória estiver habilitada, um evento é registrado semelhante à seguinte:

    Tipo de evento: informações
    Origem do evento: W3SVC
    Categoria do evento: nenhum
    IDENTIFICAÇÃO de evento: 1077
    Data: Date
    Tempo: Time
    Usuário: N/d
    ComputerName do computador:
    Descrição:
    Um processo do operador com identificação de processo de pool de aplicativos '1234' servidor 'DefaultAppPool' solicitou uma reciclagem, pois atingiu o limite de memória virtual.

  • Se a reciclagem de memória não é habilitada, um processo do IIS usa até 1,3 GB de memória virtual e eventualmente pára de responder. Em seguida, é registrado um evento semelhante à seguinte:

    Tipo de evento: aviso
    Origem do evento: W3SVC
    Categoria do evento: nenhum
    IDENTIFICAÇÃO de evento: 1009
    Data: Date
    Tempo: Time
    Usuário: N/d
    ComputerName do computador:
    Descrição:
    Um processo que atende pool de aplicativos 'DefaultAppPool' terminou inesperadamente. A identificação do processo era '1234'. O código de saída do processo era '0xc0000005'.

    Para obter mais informações, consulte o Centro de Ajuda e suporte em http://support.microsoft.com.

  • No IIS 5.0, um processo do IIS usa até 1,3 GB de memória virtual e, eventualmente, pára de responder. Em seguida, é registrado um evento semelhante à seguinte:

    Tipo de evento: erro
    Origem do evento: Service Control Manager
    Categoria do evento: nenhum
    IDENTIFICAÇÃO de evento: 7031
    Data: Date
    Tempo: Time
    Usuário: N/d
    ComputerName do computador:
    Descrição:
    O serviço IIS Admin Service foi encerrado inesperadamente. Ele tem feito vez (es esta 7). A seguinte ação corretiva será executada em milissegundos 0: nenhuma ação.

    Para obter mais informações, consulte o Centro de Ajuda e suporte em http://support.microsoft.com.

Mais Informações

Quando um processo do IIS consome memória excessiva, use a ferramenta IIS Debug Diagnostic para solucionar as alocações de memória pendentes que causou o vazamento de memória. Você precisará inserir o arquivo LeakTrack.dll e, em seguida, monitorar o vazamento de memória. Assim que o vazamento é reproduzido, um arquivo de despejo de memória é gerado. O arquivo de despejo de memória contém as informações de vazamento de memória.

Para usar a ferramenta IIS Debug Diagnostic para solucionar problemas de um processo do IIS que consome memória excessiva, siga estas etapas.

Etapa 1: Baixar e instalar o IIS Diagnostics Toolkit

Os seguintes arquivos estão disponíveis para download no Centro de download da Microsoft:

IIS Diagnostics Toolkit para sistemas de 32 bits

Recolher esta imagemExpandir esta imagem
Download
Download the iisdiag.msi package now. (http://www.microsoft.com/downloads/details.aspx?FamilyID=28bd5941-c458-46f1-b24d-f60151d875a3&DisplayLang=en)

IIS Diagnostics Toolkit para sistemas baseados no Itanium

Recolher esta imagemExpandir esta imagem
Download
Download the iisdiag.msi package now. (http://www.microsoft.com/downloads/details.aspx?FamilyID=13c1c5e5-592c-45bc-b5bb-c486b43eb539&DisplayLang=en)

Etapa 2: Configurar o log de desempenho antes do vazamento de memória

  1. Clique em Iniciar , aponte para programas , aponte para o Diagnóstico do IIS , aponte para a Ferramenta Debug Diagnostics e, em seguida, clique em Debug 1.1 com ferramentas de diagnóstico .
  2. Clique em Ferramentas e clique em Opções E configurações .
  3. Clique na guia Log de desempenho , clique em Enable Performance Counter Data Logging e, em seguida, clique em OK .
Observação O intervalo de amostragem de dados e o tempo para começar o monitoramento dependem quando o vazamento de memória é reproduzido. Por causa do tamanho do log, verifique se que você trabalhe com profissionais de suporte para obter informações que você precisa sem sobrecarregar o servidor.

Etapa 3: Criar uma regra "Vazamento de memória e identificador"

  1. Clique em Iniciar , aponte para programas , aponte para o Diagnóstico do IIS , aponte para a Ferramenta Debug Diagnostics e, em seguida, clique em Debug 1.1 com ferramentas de diagnóstico .
  2. Na guia regras , clique em Add Rule .
  3. Clique em memória e vazamento de identificador e em seguida, clique em Avançar .
  4. Selecione o processo que tem o vazamento de memória e, em seguida, clique em Avançar .
  5. Na caixa de diálogo Configurar duração de controle , digite ou selecione um período de aquecimento na caixa hora warm-Up .

    Observação Se o problema é reproduzido imediatamente, clique para selecionar a caixa de seleção Iniciar memória rastreamento imediatamente quando a regra está ativada .
  6. Na caixa de Controle de tempo , digite ou selecione a hora em que é necessário para reproduzir o problema. Verifique se a opção a caixa de seleção auto-criar uma falha de regra para obter o userdump no processo inesperado sair é selecionada.

    Observação No final do tempo especificado, um arquivo de despejo é criado.
  7. Clique em Avançar e, em seguida, clique em Concluir .

Etapa 4: Obter os dados manualmente

  1. Clique em Iniciar , aponte para programas , aponte para o Diagnóstico do IIS , aponte para a Ferramenta Debug Diagnostics e, em seguida, clique em Debug 1.1 com ferramentas de diagnóstico .
  2. Clique na guia processos , clique o processo que deseja com o botão direito do mouse e, em seguida, clique em Monitor para vazamentos .
  3. Quando o vazamento é reproduzido, clique o processo da etapa 4b com o botão direito do mouse e, em seguida, clique em Create Full Userdump .
Observação Observe que o status é ativo. Além disso, o valor de contador de Contagem de Userdump aumenta sempre que um arquivo de despejo de memória é criado.

Etapa 5: Parar o log de desempenho após o arquivo de despejo de memória

  1. Clique em Iniciar , aponte para programas , aponte para o Diagnóstico do IIS , aponte para a Ferramenta Debug Diagnostics e, em seguida, clique em Debug 1.1 com ferramentas de diagnóstico .
  2. Clique em Ferramentas e clique em Opções E configurações .
  3. Clique na guia Log de desempenho , clique em Disable Performance Counter Data Logging e, em seguida, clique em OK .

Etapa 6: Analisar o arquivo de despejo de memória


Etapa 7: Se você estiver usando arquivos .dll personalizado, adicionar o caminho "Símbolo Search Path para análise" ou o caminho "Symbol Search Path para depuração"

  1. Clique em Ferramentas e clique em Opções E configurações .
  2. Na caixa Symbol Search Path para análise ou na caixa Symbol Search Path for Debugging , digite o caminho apropriado e, em seguida, clique em OK .

A informação contida neste artigo aplica-se a:
  • Microsoft Internet Information Services 7.0
  • Microsoft Internet Information Services 6.0
  • Microsoft Internet Information Services version 5.1
  • Microsoft Internet Information Services 5.0
Palavras-chave: 
kbmt kbinfo kbhowto KB919790 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 919790  (http://support.microsoft.com/kb/919790/en-us/ )