Solucionando problemas de processamento de solicitação de RPC lenta

 

Tópico modificado em: 2008-11-12

Quando você usa o Microsoft Office Outlook em modo MAPI, o Outlook executa as operações de clientes como chamadas de procedimento remoto (RPCs) entre cliente e servidor. Essas chamadas RPC ocorrerão de maneira sincronizada se o usuário estiver executando em modo online. Qualquer atraso do servidor em atender a esses pedidos de sincronização afeta diretamente a experiência do usuário e a capacidade de resposta do Outlook. Por outro lado, a maior parte das operações que são executadas em modo de cache ocorrem nas cópias locais da caixa de correio do usuário ou são emitidas para o servidor na forma de RPCs assíncronos (em segundo plano). Em geral, os RPCs assíncronos não afetam as respostas ou a experiência geral do cliente do Outlook em si.

Quando o serviço de Armazenamento de Informações do Microsoft Exchange é iniciado pela primeira vez, ele se registra no serviço RPC e recebe uma alocação de 500 threads de RPC. Os clientes se conectam e se desconectam aos threads individuais conforme executam operações rotineiras. Isso inclui a leitura e envio de email, a criação de compromissos e tarefas e a exibição de calendários. O contador de desempenho MSExchangeIS\Solicitações RPC indica quantos threads estão sendo usados no momento (que “pertencem” aos clientes). O contado desempenho MSExchangeIS\Operações RPC/s reflete o número de operações que o servidor recebeu no último segundo. Se o número de solicitações RPC estiver aumentando constantemente, isso é uma indicação clara de que o servidor não pode processar as operações dos clientes com rapidez suficiente. Quando o contador de desempenho MSExchangeIS\Solicitações RPC alcançar 500, todos os threads de RPC foram utilizados e os clientes não poderão enviar novas solicitações ao servidor até que todas as operações em um thread existente tenham sido concluídas e esse thread seja liberado.

Como o contador desempenho MSExchangeIS\Operações RPC/s reflete a carga de trabalho atual de um servidor, ele é extremamente útil para identificar afunilamentos no processamento do Exchange, principalmente se os administradores conhecerem os valores esperados para seu servidor durante os períodos de pico e de operações normais. Os servidores com desempenho aceitável ao receberem 300 operações RPC por segundo podem ter dificuldades em manter 1500 operações RPC por segundo. Os administradores devem sempre analisar o contador MSExchangeIS\Operações RPC/s e correlacionar s alterações no valor com as alterações no número de solicitações RPC.

Se os clientes estiverem reclamando do baixo desempenho do Exchange e o MSExchangeIS\Solicitações RPC e o MSExchangeIS\Operações RPC/s estiverem baixos ou zerados, isso é uma clara indicação de que o afunilamento não está no servidor em si. O problema aqui é que algo externos ao servidor está impedindo que as informações cheguem no servidor. Os administradores devem analisar o desempenho do Active Directory, o desempenho da rede, a configuração do cliente e outras áreas que podem fazer com que os dados não cheguem ao servidor Exchange.

Se o MSExchangeIS\Solicitações RPC estiver constantemente aumentando enquanto o MSExchangeIS\Operações RPC/s permanecer razoavelmente estável, isso indica que o servidor não pode manipular a carga de trabalho existente. Os administradores devem verificar o componentes de hardware, incluindo a memória física, o armazenamento e a capacidade do processador, ou reduzir o número de usuários no servidor.

Se o MSExchangeIS\Solicitações RPC estiver aumentando constantemente mas o MSExchangeIS\Operações RPC/s estiver reduzindo constantemente, isso indica que o servidor Exchange é a origem do afunilamento. Nessa situação, algo está impedindo que o Armazenamento de Informações conclua as operações de RPC e os threads RPC associados permanecem alocados. Ao passo que mais threads são alocados, o servidor fica com menos threads disponíveis para novas operações, portanto, o número de novas operações diminui. Se o servidor eventualmente atingir 500 solicitações RPC pendentes, as novas operações de RPC serão recusadas. Isso em geral é causado por uma séria insuficiência de recursos físicos (memória ou disco), por um problema de processamento dentro do Armazenamento de Informações ou por um componente integrado (antivírus, registro no diário, entre outros).

A tabela a seguir inclui os contadores mais importantes para a solução de problemas e isolamento dos problemas de processamento de RPC.

Contadores de desempenho para processamento de RPC

Contador Valores esperados

MSExchangeIS\Solicitações RPC

Indica o número de solicitações RPC MAPI que estão sendo atendidas no momento pelo serviço de Armazenamento de Informações do Microsoft Exchange.

O serviço de Armazenamento de Informações do Microsoft Exchange aceita até 500 solicitações de RPC simultaneamente antes de rejeitar novas solicitações de cliente.

  • Ele deve estar sempre abaixo de 70.

MSExchangeIS\Latência Média de RPC

Indica a latência média, em milissegundos, para todas as operações RPC nos últimos 1024 pacotes RPC.

Consulte "Limitação do cliente" posteriormente neste tópico para obter informações sobre como os clientes são afetados quando a latência geral média de RPC de um servidor aumenta.

  • Ele deve estar sempre abaixo de 25 milissegundos.

MSExchangeIS\Operações RPC/s

Indica o número atual de operações de RPC enviadas ao Armazenamento de Informações por segundo.

  • Esse é um bom indicador da atividade do cliente e é usado somente para fins informativos.

MSExchangeIS\Núm. de RPC de Pacotes Lentos

Indica o número de pacotes de RPC nos últimos 1024 com latência superior a 2 segundos.

  • Ela deve estar sempre abaixo de 2. Algumas operações normais podem levar mais que 2 segundos, mas a média deverá sempre ser inferior a 2.

Monitoramento do lado do cliente

O Microsoft Office Outlook 2003 e o Office Outlook 2007 incluem recursos de monitoramento do lado do cliente. O monitoramento do lado do cliente é usado para localizar erros de cliente e problemas de latência. Você pode habilitar o monitoramento do lado do cliente em um servidor Exchange modificando o Registro do servidor. Quando habilitados, os clientes do Outlook 2007 e do Outlook 2003 enviam dados ao servidor com base no status e no estado da conexão, que inclui solicitações RPC mal-sucedidas e condições de erro. Essas informações são agregadas no servidor e registradas em entradas de log de eventos no servidor. Para obter as etapas detalhadas sobre como habilitar o monitoramento do lado do cliente no Outlook, consulte Como habilitar o monitoramento do lado do cliente.

Limitação do cliente

O Exchange 2007 inclui um novo recurso conhecido como Limitação do cliente RPC, que está disponível para ajudar os administradores a gerenciar a experiência de desempenho do usuário final. A limitação de cliente RPC foi apresentada para ajudar a impedir que os aplicativos clientes enviassem um excesso de operações RPC por segundo ao servidor Exchange que pudessem reduzir o desempenho geral do servidor. Esses aplicativos de cliente incluem mecanismos de pesquisa de área de trabalho que procuram em todos os objetos dentro da caixa de correio de um usuário, aplicativos personalizados gravados para manipular os dados localizados em caixas de correio do Exchange, produtos de arquivamento de email de classe empresarial e caixas de correio habilitadas para CRM com marcação automática de email habilitada. A limitação do cliente permite que o Exchange descubra e ajuda a evitar a monopolização do servidor por alguns poucos usuários. Quando um cliente for identificado pelo servidor Exchange como o causador do efeito de desproporção no servidor, o servidor enviará uma solicitação de "retirada" para que o cliente reduza o efeito do desempenho no servidor. Para obter informações detalhadas sobre os recursos de limitação de cliente disponíveis com o Exchange 2007, consulte Compreendendo a limitação de cliente.