Artigo: 815372 - Última revisão: quarta-feira, 5 de Janeiro de 2011 - Revisão: 2.0

Como optimizar a utilização da memória no Exchange Server 2003

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.
Este artigo poderá conter hiperligações para conteúdo em inglês (ainda não traduzido).

Importante: este artigo contém informações sobre como modificar o registo. Certifique-se de que cria uma cópia de segurança do registo antes de o modificar. Certifique-se de que sabe como restaurar o registo se ocorrer um problema. Para obter mais informações sobre como efectuar uma cópia de segurança, restaurar e modificar o registo, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
256986  (http://support.microsoft.com/kb/256986/ ) Descrição do registo do Microsoft Windows

Nesta página

Expandir tudo | Reduzir tudo

Sumário

Aviso: poderão ocorrer problemas graves se modificar o registo de forma incorrecta utilizando o Editor de registo (Registry Editor) ou qualquer outro método. Estes problemas poderão forçar a reinstalação do sistema operativo. A Microsoft não garante que estes problemas possam ser resolvidos. Todo e qualquer risco decorrente da modificação do registo é da responsabilidade do utilizador.Este artigo descreve a optimização da utilização da memória no computador com o Exchange Server 2003 em execução.

Se tiver mais de 1 gigabyte (GB) de memória física (RAM) instalada num servidor com o Microsoft Exchange Server 2003 em execução, deve certificar-se de que o Exchange 2003 consegue utilizar essa memória de forma eficiente.

Nota: o Exchange 2003 efectua uma verificação de configuração ideal da memória quando o processo do arquivo é iniciado. Se as definições da memória não forem as ideais, verá o evento 9665 no Visualizador de eventos (Event Viewer). Esta mensagem é apresentada se uma ou mais das seguintes condições se verificar:
  • O servidor tem uma versão do Microsoft Windows 2000 Server e o valor
    SystemPages
    do registo tem um valor fora do intervalo 24000 a 31000.

    Notas
    • A subchave
      SystemPages
      está na seguinte localização:
      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\SystemPages
    • As únicas entradas válidas para a subchave
      SystemPages
      são as seguintes:
      • Valores calculados pelo sistema, superiores a 180.000
      • Zero (0)
      • 0xFFFFFFFF
      Outros valores poderão funcionar actualmente, mas são obsoletos. Se o parâmetro /3GB estiver presente, o valor para a subchave
      SystemPages
      tem de ser definido como 0xFFFFFFFF.
  • O servidor tem o Microsoft Windows 2000 Advanced Server ou o Microsoft Windows 2000 Datacenter Server, tem 1 GB ou mais de memória física, mas não tem o parâmetro /3GB definido no ficheiro boot.ini.
  • O servidor tem o Microsoft Windows Server 2003 Standard, o Microsoft Windows Server 2003 Enterprise ou o Microsoft Windows Server 2003 Datacenter e o valor
    SystemPages
    do registo está definido com um valor diferente de 0.
  • O servidor tem o Microsoft Windows Server 2003 Standard Edition, o Microsoft Windows Server 2003 Enterprise Edition ou o Microsoft Windows Server 2003 Datacenter Edition, tem 1 GB ou mais de memória física e o parâmetro /3GB está definido, mas a definição /USERVA não está presente no ficheiro boot.ini.
  • O servidor tem qualquer edição do Microsoft Windows 2000 Server ou do Microsoft Windows Server 2003 e o valor
    HeapDeCommitFreeBlockThreshold
    do registo está definido com um valor diferente de 0x00040000.
A verificação da configuração da memória não ocorre em servidores que tenham o Microsoft Small Business Server. Quando o evento 9665 ocorre, é escrita uma DWORD no registo de eventos como dados adicionais.

Se pretender desactivar a verificação da configuração da memória, pode criar a seguinte chave de registo:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\ParametersSystem
Parâmetro:
Suppress Memory Configuration Notification

Tipo: REG_DWORD
Definição: 1

Notas
  • Para computadores com o Exchange Server que não contenham quaisquer caixas de correio ou pastas públicas, como gateways de correio, não recomendamos a definição do parâmetro /3GB no boot.ini, independentemente do tamanho da memória física instalada.
  • Para computadores com o Exchange Server que sejam simultaneamente controladores de domínio do Active Directory ou servidores de catálogo global, também não recomendamos a definição do parâmetro /3GB no boot.ini. Recomendamos que tenha controladores de domínio do Active Directory ou servidores de catálogo global dedicados.
  • Uma vez que o Microsoft Small Business Server é instalado como um controlador de domínio e um servidor de Exchange integrados, também não recomendamos a definição do parâmetro /3GB quando tiver o Exchange Server 2003 num ambiente do Small Business Server. No entanto, os outros conceitos e definições descritos neste artigo aplicam-se igualmente ao Exchange Server 2003 num ambiente do Microsoft Small Business Server.



As secções que se seguem neste artigo contêm recomendações para cada uma destas definições.

Conceitos de espaço de endereçamento virtual

Independentemente da configuração de hardware, do número de bases de dados e do número de utilizadores no servidor, o processo do Information Store (Store.exe) no Exchange 2003 é capaz de endereçar uma quantidade finita de memória. Esta quantidade de memória é conhecida como espaço de endereçamento virtual. Na maior parte das situações, a utilização deste espaço de endereçamento virtual para o arquivo de informações dita o desempenho e escalabilidade globais dos servidores de caixas de correio do Exchange Server 2003. Para os servidores de pequena e média dimensão, o Exchange Server 2003 configura automaticamente o melhor equilíbrio. Porém, para os servidores de maiores dimensões, poderá ser necessário ajustar manualmente alguns dos parâmetros de optimização.

Se o computador do Exchange Server 2003 tiver 1 gigabyte (GB) ou mais de memória instalada e hospedar caixas de correio ou pastas públicas, certifique-se de que adiciona o parâmetro /3GB ao ficheiro Boot.ini no servidor. Se o servidor não tiver quaisquer caixas de correio ou pastas públicas, como um gateway de correio, não recomendamos a utilização do parâmetro /3GB. Por predefinição, os sistemas operativos Microsoft Windows 2000 Advanced Server e Windows Server 2003 reservam 2 GB de espaço de endereçamento virtual para utilização em modo kernel e 2 GB para o modo de utilizador. O espaço de endereçamento virtual para um processo específico é atribuído no arranque e aumenta à medida que a memória é utilizada durante o funcionamento. Normalmente, a utilização efectiva da memória (o conjunto de trabalho) de um processo é muito inferior ao espaço de endereçamento atribuído a esse processo. Num computador com o Exchange Server 2003 com 1 GB ou mais de memória, tem de modificar os sistemas operativos Windows 2000 Advanced Server e Windows Server 2003 de forma a que estejam disponíveis 3 GB de espaço de memória no modo de utilizador. Pode fazê-lo utilizando o parâmetro /3GB no ficheiro Boot.ini. Para utilizar esta definição num computador baseado no Windows 2000 Advanced Server, tem de configurar também a entrada SystemPages do registo na seguinte subchave:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\SystemPages
Defina a entrada SystemPages do registo com um valor DWORD de 0xFFFFFFFF (hexadecimal). Esta alteração do registo não é necessária, nem a recomendamos, em servidores baseados no Windows 2003 porque esta funcionalidade é obtida através do parâmetro Userva, descrito numa secção mais adiante.

Não defina o parâmetro /3GB se tiver o Windows 2000 Server Standard Edition. Este parâmetro de optimização da memória não é suportado no Windows 2000 Server Standard Edition. Apesar de o servidor não gerar uma mensagem de erro se o fizer, o resultado da definição deste parâmetro é a existência de um falso espaço de endereçamento de memória. Nos casos em que um processo tenta aceder a este espaço de endereçamento superior, ocorre uma mensagem de erro do tipo Stop num ecrã azul e o servidor deixa de responder.

Nota: o parâmetro de optimização /3GB é suportado em todas as versões do Windows Server 2003, incluindo o Windows Server 2003 Standard Edition. Para obter mais informações sobre como definir o parâmetro /3GB, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
266096  (http://support.microsoft.com/kb/266096/ ) Exchange 2000 requires /3GB switch with more than 1 gigabyte of physical RAM
Se tiver o Exchange 2003 num computador baseado no Windows Server 2003, e se o parâmetro /3GB estiver definido, recomendamos que defina o parâmetro /USERVA=3030 no ficheiro Boot.ini. Isto permite mais entradas na tabela de páginas do sistema (PTE, page table entries) no servidor. Para obter mais informações sobre o parâmetro /USERVA, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
810371  (http://support.microsoft.com/kb/810371/ ) Using the /Userva switch on Windows Server 2003-based computers that are running Exchange Server
Certifique-se de que o processo Store.exe não fica sem espaço de endereçamento virtual. Quando o espaço de endereçamento virtual se esgotar, a atribuição de memória não será bem sucedida mesmo que haja bastante RAM física disponível. Para resolver este problema, tem de reiniciar o serviço Information Store. Por exemplo, um servidor que tenha 2 GB de RAM física sem o parâmetro /3GB definido no ficheiro Boot.ini ficará sem memória disponível quando o espaço de endereçamento virtual do processo Store.exe atingir 2 GB. Neste caso, o Gestor de tarefas (Task Manager) do Windows poderá mostrar que apenas estão a ser efectivamente utilizados 1,5 GB de memória. No entanto, o servidor não tem memória disponível e o serviço Information Store tem de ser reiniciado.

Quando a memória virtual do processo Store.exe estiver a esgotar-se, o desempenho do servidor do Exchange Server 2003 poderá diminuir drasticamente. Quando o maior bloco de memória virtual livre estiver reduzido a 32 MB, é gerado um evento de aviso com o ID 9582 no registo de aplicações do Visualizador de eventos (Event Viewer). Quando vir este evento, é melhor reiniciar o processo Store.exe assim que possível. Quando o maior bloco de memória virtual livre estiver reduzido a 16 MB, é gerado um evento de erro com o ID 9582 no registo de aplicações do Visualizador de eventos (Event Viewer). Se este evento ocorrer, o servidor está a aproximar-se de uma situação de funcionamento crítica, pelo que deve ser reiniciado assim que possível. Após a ocorrência deste erro, a memória poderá esgotar-se em várias horas. Se não responder a estes eventos, poderá detectar um ou mais dos seguintes sintomas:
  • Falhas intermitentes na entrega de mensagens.
  • Falha intermitente do processo de conversão do correio da Internet (IMAIL), que é indicada pelo evento com o ID 12800.
  • Determinados programas antivírus que reconheçam o Exchange poderão gerar mensagens ou eventos de erro.

Maximizar o espaço de endereçamento virtual

Convém monitorizar o espaço de endereçamento virtual do Information Store em grandes servidores de caixas de correio para garantir que o desempenho e a estabilidade não diminuem. A forma mais fácil de o fazer consiste em monitorizar o contador VM Largest Block Size do objecto de desempenho MSExchangeIS no utilitário Desempenho (Performance). Este valor é apresentado em bytes. Depois de iniciar o computador, é normal verificar-se uma brusca diminuição do tamanho do maior bloco de memória virtual. No entanto, depois de um ou dois dias de funcionamento, o valor aproxima-se de um nível de funcionamento normal. Um valor de maior bloco livre de memória virtual superior a 200.000.000 bytes (cerca de 200 MB) indica um servidor saudável. Se o valor for inferior a este, monitorize o servidor com mais atenção. Se detectar um espaço de endereçamento virtual reduzido:
  1. Se tiver 1 GB ou mais de memória física instalada, certifique-se de que o parâmetro /3GB está definido no ficheiro Boot.ini caso se verifiquem as seguintes condições no servidor:
    • O servidor hospeda caixas de correio ou pastas públicas.
    • O sistema operativo é o Windows 2000 Advanced Server ou o Windows Server 2003.
    Se o servidor não tiver quaisquer caixas de correio ou pastas públicas, como um gateway de correio, não recomendamos a utilização do parâmetro /3GB.
  2. Se o Exchange Server 2003 estiver instalado num servidor baseado no Windows Server 2003 e se tiver o parâmetro /3GB definido, certifique-se de que o parâmetro /USERVA=3030 está definido no ficheiro Boot.ini. Se o Exchange Server 2003 estiver instalado num servidor baseado no Windows 2000, certifique-se de que o servidor tem o Windows 2000 Service Pack 3 (SP3) ou posterior.
  3. Se tiver 1 GB ou mais de memória física instalada, configure o valor de registo
    HeapDeCommitFreeBlockThreshold
    na seguinte chave do registo e, em seguida, reinicie o servidor:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager

    Nome do valor:
    HeapDeCommitFreeBlockThreshold

    Tipo do valor: REG_DWORD
    Dados do valor:
    0x00040000
    (recomendado)
    Valor predefinido: não existente
    Para obter mais informações sobre como utilizar e configurar este valor de registo, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
    315407  (http://support.microsoft.com/kb/315407/ ) The "HeapDecommitFreeBlockThreshold" registry key
Normalmente, os passos anteriores resolvem o problema de consumo de espaço de endereçamento virtual. No entanto, em alguns servidores de maiores dimensões, poderá ser necessária uma optimização adicional do tamanho da cache da base de dados do arquivo para reequilíbrio entre o desempenho e a escalabilidade.

Tamanho da cache da base de dados do arquivo

A cache da base de dados do arquivo é também conhecida como a memória intermédia do ESE, e fornece uma grande área de cache para transacções de base de dados antes de serem consolidadas no arquivo. Por predefinição, o Exchange Server 2003 consulta a configuração da memória do computador local e, em seguida, reserva 896 MB de RAM se o parâmetro /3GB estiver definido no ficheiro Boot.ini ou 576 MB de RAM se o parâmetro /3GB não estiver definido. Quando um servidor está sobrecarregado ou quando o desempenho do disco não é o ideal, uma memória intermédia do ESE de grandes dimensões aumenta o desempenho global do sistema. Dependendo da configuração, poderá ter de aumentar ou reduzir o tamanho desta memória intermédia para obter o melhor desempenho global.

Numa situação em que o Exchange Server 2003 é utilizado num ambiente onde coexiste com outros programas de servidor, poderá monopolizar os recursos de memória disponíveis. O algoritmo de atribuição dinâmica de memória (DBA, Dynamic Buffer Allocation) é responsável por devolver memória ao sistema operativo, caso seja necessária para outros programas. Porém, o utilizador pode limitar manualmente a memória que o Exchange Server 2003 utiliza reduzindo a memória intermédia do ESE.

Em servidores que tenham mais de 2 GB de memória, poderá ser útil aumentar o tamanho da memória intermédia do ESE. Dadas as limitações do espaço de endereçamento virtual, este valor não deve ser definido com mais 1.200 MB.

Antes de aumentar o tamanho máximo da memória intermédia, convém usar o utilitário Desempenho (Performance) do Windows para monitorizar a memória do servidor com uma carga normal. Para tal, monitorize o seguinte objecto e valor de desempenho:
Objecto de desempenho: Processo (Process)
Contador de desempenho: Bytes do espaço virtual (Virtual Bytes)
Instância: STORE
As informações reunidas pela monitorização do desempenho proporcionam um valor exacto do espaço de endereçamento virtual que o processo Store.exe reservou. Num servidor com o parâmetro /3GB definido no ficheiro Boot.ini, o valor apresentado no utilitário Desempenho (Performance) é normalmente inferior a 2,8 GB. Num servidor sem o parâmetro /3GB definido no ficheiro Boot.ini, o valor é normalmente inferior a 1,8 GB. Convém adicionar o parâmetro /3GB ao ficheiro Boot.ini em servidores com 1 GB ou mais de memória instalada. Se vir valores superiores aos anteriormente mencionados, para qualquer configuração, não aumente o tamanho máximo da memória intermédia. Se vir valores inferiores aos anteriormente mencionados, para qualquer configuração, poderá pretender aumentar o tamanho máximo da memória intermédia da base de dados.

Por exemplo, se tiver um servidor configurado para utilizar o parâmetro /3GB no ficheiro Boot.ini e a monitorização do desempenho mostrar que os bytes de espaço virtual somam 2,5 GB quando o servidor tem muita carga, poderá conseguir aumentar o tamanho máximo da memória intermédia em cerca de 300 MB, para um tamanho total de 1.200 MB.

O aumento do tamanho da memória intermédia poderá afectar negativamente o desempenho do servidor. Uma memória intermédia maior significa um maior consumo de espaço de endereçamento virtual. Por este motivo, se o servidor tiver limitações de espaço de endereçamento de memória virtual, o aumento do tamanho da memória intermédia poderá criar instabilidade no sistema operativo. Num servidor de caixas de correio muito grande, poderá ser necessário diminuir o tamanho predefinido da memória intermédia por forma a evitar a instabilidade do sistema.

Como modificar o tamanho da memória intermédia do ESE

O parâmetro msExchESEParamCacheSizeMax controla o tamanho da memória intermédia do ESE. O seu valor é expresso sob a forma de contagem de páginas e deve ser definido com um múltiplo exacto de 8.192 por forma a obter a máxima eficiência:
  • O tamanho predefinido em servidores com o parâmetro /3GB definido: 229376 (896 MB)
  • O tamanho predefinido em servidores sem o parâmetro /3GB definido: 147456 (576 MB)
  • O valor máximo recomendado com o parâmetro /3GB definido: 311296 (1,2 GB)

    Nota: deve monitorizar primeiro os bytes do espaço virtual para o processo do arquivo, como mencionado anteriormente neste artigo, aumentando este valor em relação à predefinição.
  • O valor máximo recomendado sem o parâmetro /3GB definido: 196608 (768 MB)

    Nota: deve monitorizar primeiro os bytes do espaço virtual para o processo do arquivo, como mencionado anteriormente neste artigo, aumentando este valor em relação à predefinição.
Nota: a reprodução de registos de transacções é significativamente mais rápida quando a memória intermédia do ESE é definida com um valor maior. Poderá pretender aumentar temporariamente o tamanho da memória intermédia do ESE para o valor 311296 numa situação de recuperação de desastre.

Se tiver efectuado uma actualização directa de um computador com o Exchange 5.5 Server para o Exchange 2000 Server, poderá notar um valor invulgarmente elevado atribuído ao parâmetro msExchESEParamCacheSizeMax. Em alguns servidores, este valor é de 2.048 MB. Neste caso, remova ou reponha o parâmetro com um valor mais apropriado. Para modificar o tamanho da cache da base de dados do arquivo:
  1. Inicie o utilitário ADSI (Active Directory Service Interfaces) Edit. O utilitário ADSI Edit está incluído nas ferramentas de suporte do Windows, localizadas na pasta Support\Tools do CD-ROM do Windows 2000 ou do Windows Server 2003.
  2. Em Configuration Container [nomedoservidor.exemplo.com], em que nomedoservidor.exemplo.com é o nome de domínio totalmente qualificado (FQDN, fully qualified domain name) do servidor, expanda CN=Configuration, DC=exemplo, DC=com.
  3. Expanda CN=Services, expanda CN=Microsoft Exchange, expanda CN=nomedaorganização, em que nomedaorganização é o nome da sua organização, expanda CN=Administrative Groups, expanda CN=primeiro grupo administrativo, em que primeiro grupo administrativo é o nome do seu grupo administrativo, expanda CN=Servers e expanda CN=nomedoservidor.
  4. Em CN=nomedoservidor, clique com o botão direito do rato em CN=InformationStore e clique em Properties.
  5. Na lista Select which properties to view, clique em Both.
  6. Na lista Select a property to view, clique em msExchESEParamCacheSizeMax.

    Nota: a propriedade msExchESEParamCacheSizeMax ultrapassa a largura da lista Select a property to view. Certifique-se de que não clica na propriedade msExchESEParamCacheSizeMin por engano.
  7. Na caixa Edit Attribute, escreva o valor que pretende atribuir a este atributo.

    Nota: certifique-se de que introduz um valor que seja um múltiplo de 8.192.
  8. Clique em Set e clique em OK.
  9. Termine o utilitário ADSI Edit. Aguarde por um período de tempo suficiente para que este valor seja replicado em toda a floresta do Active Directory.
  10. Reinicie o serviço Information Store do Microsoft Exchange no servidor do Exchange.

A informação contida neste artigo aplica-se a:
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Windows Small Business Server 2003 Premium Edition
  • Microsoft Windows Small Business Server 2003 Standard Edition
Palavras-chave: 
kbinfo KB815372