Noções Básicas Sobre Diretivas de Limitação de Cliente

Aplica-se a: Exchange Server 2010

Tópico modificado em: 2009-11-17

O Microsoft Exchange Server 2010 usa as diretivas de limitação de cliente para gerenciar o desempenho da organização do Exchange. Para isso, o Exchange rastreia os recursos que cada usuário consome e aplica limites de largura de banda da conexão conforme necessário.

Entre outras coisas, a limitação de cliente ajuda você a certificar-se de que:

  • Os usuários não estejam levando o sistema ao limite intencionalmente.
  • Os usuários não estejam levando o sistema ao limite acidentalmente.
  • Os usuários de vários métodos de conectividade estejam compartilhando recursos proporcionalmente.

Sumário

Diretivas não-padrão e padrão

Noções básicas sobre parâmetros de diretiva

Parâmetros e comandos do Shell de Gerenciamento do Exchange

Tarefas comuns de gerenciamento de diretivas de limitação

Contadores de limitação de desempenho

Diretivas não-padrão e padrão

Apesar de haver uma diretiva-padrão de limitação de cliente que é geralmente suficiente para gerenciar a carga colocada no seu sistema do Exchange, você pode personalizar a diretiva-padrão ou adicionar diretivas, com base nas necessidades da sua organização.

Se você estiver hospedando vários locatários na sua organização do Exchange, você pode definir uma carga aceitável para cada usuário como um locatário. Da mesma forma, se você estiver nas instalações de uma organização, poderá definir a carga aceitável para causa um dos usuários. Através das diretivas, o Exchange avalia como cada usuário usa o sistema e garante que a carga resultante por usuário fique dentro de limites aceitáveis, conforme definidas pela diretiva de usuário. O sistema de limitação do cliente monitora o uso do sistema para cada usuário e usa a diretiva de limitação associada a esse usuário, para determinar se deve haver limitação.

Quando uma organização do Exchange é criada, uma diretiva-padrão de limitação que implicitamente governa todos os usuários dentro da organização é criada automaticamente.

Em instalações do Exchange 2010 Enterprise, há uma diretiva-padrão de limitação única chamada Primeira Organização. Em instalações de serviço do Outlook Live, cada inquilino tem sua própria diretiva-padrão de limitação.

Noções básicas sobre parâmetros de diretiva

Você pode gerenciar as configurações das diretivas de limitação através do Shell de Gerenciamento do Exchange, usando os cmdlets Get-ThrottlingPolicy, Set-ThrottlingPolicy, New-ThrottlingPolicy e Remove-ThrottlingPolicy.

A carga aceitável de uma diretiva de limitação é definida pelos valores do parâmetro do cmdlet na diretiva de limitação. Estes são os tipos de componentes cobertos por políticas de limitação:

  • Microsoft Exchange ActiveSync 
  • Serviços Web do Exchange
  • IMAP
  • Outlook Web App
  • POP
  • Windows PowerShell

Todos esses tipos de componentes têm parâmetros de diretiva que funcionam de maneira similar, exceto pelo Windows PowerShell.

Os tipos de componentes comuns são regidos por quatro parâmetros de diretiva: <Component Acronym>MaxConcurrency, <Component Acronym>PercentTimeInAD, <Component Acronym>PercentTimeInCAS e -<Component Acronym>PercentTimeInMailboxRPC. Os nomes de parâmetro são prefixados pelo acrônimo do tipo de componente. A tabela a seguir lista os acrônimos de tipo de componente que são usados para os parâmetros, nos cmdlets da diretiva de limitação.

Acrônimos de tipo de componente usados nos cmdlets de diretiva de limitação

Acrônimo de componente Descrição Exemplo

EAS

Exchange ActiveSync

No parâmetro EASPercentTimeInCAS, o acrônimo de componente EAS representa o componente de Exchange ActiveSync.

EWS

Serviços Web do Exchange

No parâmetro EWSPercentTimeInCAS, o acrônimo de componente EWS representa o componente de serviços Web do Exchange.

OWA

Outlook Web App

No parâmetro OWAPercentTimeInCAS, o acrônimo de componente OWA representa o componente do Outlook Web App.

IMAP

IMAP4

No parâmetro IMAPPercentTimeInCAS, o acrônimo de componente IMAP representa o componente de IMAP4.

POP

POP3

No parâmetro POPPercentTimeInCAS, o acrônimo de componente POP representa o componente POP3.

Dica

Os usuários de Unificação de Mensagens são considerados usuários dos Serviços Web do Exchange e suas conexões ao servidor do Exchange são limitados pelos parâmetros dos Serviços Web do Exchange tais como EWSMaxConcurrency, EWSPercentTimeInAD, EWSPercentTimeInCAS e EWSPercentTimeInMailboxRPC.

Retornar ao início

MaxConcurrency

O valor de um parâmetro de diretiva MaxConcurrency indica quantas conexões simultâneas um determinado usuário pode ter em relação a um servidor Exchange de cada vez. Uma conexão é mantida a partir do momento em que uma solicitação é recebida até que uma resposta seja enviada completamente para o solicitante. Se os usuários tentarem fazer mais solicitações concorrentes que o permitido por suas diretivas, o nova tentativa de conexão falhará. Entretanto, as condições existentes continuam válidas. O <Component Acronym>MaxConcurrency tem um intervalo válido de 0 a 100 (inclusive). Para indicar que o <Component Acronym>MaxConcurrency não deve ter limites, esse valor deve ser configurado para $null.

Importante

Não defina os parâmetros da diretiva de limitação para $null, a menos que você tenha uma necessidade de negócios para isso. Os usuários sem limite não são limitados em sua habilidade de intencional ou acidentalmente causar uma carga alta no servidor.

PercentTimeInCAS, PercentTimeInAD e PercentTimeInMailboxRPC

O valor de um parâmetro de diretiva PercentTimeInCAS, PercentTimeInAD ou PercentTimeInMailboxRPC indica que porcentagem de um minuto pode ser gasta para:

  • Executar código do servidor de Acesso para Cliente (<Component Acronym>PercentTimeInCAS)
  • Executar solicitações LDAP (<Component Acronym>PercentTimeInAD)
  • Executar solicitações RPC de caixa de correio (<Component Acronym>PercentTimeInMailboxRPC)

Um valor igual a 100 indica que, para cada janela de um minuto, o processo pode gastar 60 segundos de tempo que consome o recurso em questão. Entretanto, parece que um processo nunca encontraria uma limitação com um valor definido para 100. Assim, você tem que considerar o efeito de solicitações simultâneas. Se um processo faz duas solicitações simultâneas que gastam 60 segundos cada executando código no servidor de Acesso para Cliente, o processo usou 120 segundos em uma janela de 60 segundos, representando um valor de <Component Acronym>PercentTimeInCAS de 200 por cento.

Para indicar que PercentTimeInCAS, PercentTimeInAD, and PercentTimeInMailboxRPC não devem ter limites, esse valor deve ser configurado para $null.

Importante

Não defina os parâmetros da diretiva de limitação para $null, a menos que você tenha uma necessidade de negócios para isso. Os usuários não são limitados em sua habilidade de intencional ou acidentalmente causar uma carga alta no servidor.

É importante observar que <Component Acronym>PercentTimeInCAS é um superconjunto sobreposto de <Component Acronym>PercentTimeInAD e <Component Acronym>PercentTimeInMailboxRPC. Isso significa que o gasto em tempo de processamento do servidor de Acesso para Cliente sempre será maior do que os gastos em <Component Acronym>PercentTimeInAD e <Component Acronym>PercentTimeInMailboxRPC. Isso é porque, para o componente Exchange fazer uma chamada de Active Directory ou RPC, ele já deve estar executando o código do servidor de Acesso para Cliente. Além disso, o gasto em tempo de processamento para <Component Acronym>PercentTimeInCAS não é interrompido enquanto as chamadas LDAP ou RPC estão sendo feitas. Apesar de a solicitação poder estar aguardando em sincronia por uma resposta do repositório do Active Directory ou do Exchange, o processo ainda estará consumindo um thread no servidor e, dessa forma, deverá continuar a ser cobrado por esse uso. Como resultado, o valor de <Component Acronym>PercentTimeInCAS deve ser configurado para um valor maior que os valores de <Component Acronym>PercentTimeInAD e de <Component Acronym>PercentTimeInMailboxRPC.

Retornar ao início

Parâmetros e comandos do Shell de Gerenciamento do Exchange

Esta seção discute os seguintes parâmetros do Windows PowerShell:

  • PowerShellMaxConcurrency
  • PowerShellMaxCmdlets
  • PowerShellMaxCmdletsTimePeriod
  • PowerShellMaxCmdletQueueDepth

PowerShellMaxConcurrency

No contexto do Shell remoto, o parâmetro PowerShellMaxConcurrency especifica o número máximo de sessões do Shell remoto que um usuário do Shell pode abrir ao mesmo tempo. No contexto dos Serviços Web , o parâmetro PowerShellMaxConcurrency especifica o número de cmdlets que um usuário pode executar ao mesmo tempo. Esse valor não corresponde necessariamente ao número de navegadores abertos pelo usuário.

PowerShellMaxCmdlets

O parâmetro PowerShellMaxCmdlets define o número de cmdlets que podem ser executados por período sem serem limitados. Esse parâmetro depende diretamente do valor definido pelo parâmetro PowerShellMaxCmdletsTimePeriod. Ambos os valores devem ser definidos ao mesmo tempo.

PowerShellMaxCmdletsTimePeriod

O parâmetro PowerShellMaxCmdletsTimePeriod define o período, em segundos, que um usuário pode executar o número de cmdlets definido pelo parâmetro PowerShellMaxCmdlets.

PowerShellMaxCmdletQueueDepth

O parâmetro PowerShellMaxCmdletQueueDepth define o número de operações que um usuário pode executar ao mesmo tempo. Esse valor afeta diretamente o comportamento dos parâmetros PowerShellMaxCmdlets e PowerShellMaxConcurrency. Por exemplo, o parâmetro PowerShellMaxConcurrency irá usar pelo menos duas das operações definidas pelo parâmetro PowerShellMaxCmdletQueueDepth, mas as operações adicionais também serão contadas em relação ao limite, sempre que o cmdlet for executado. O número de operações que contam para o limite depende dos cmdlets que são executados. Recomendamos que o valor para o parâmetro PowerShellMaxCmdletQueueDepth seja pelo menos três vezes maior que o valor do parâmetro PowerShellMaxConcurrency. Esse parâmetro não irá afetar operações executadas usando o Painel de Controle do Exchange ou operações que sejam executadas pelos Serviços Web do Exchange.

Gerenciando diretivas de limitação de cliente

O Shell de Gerenciamento do Exchange permite que você modifique e visualize as configurações de diretiva de limitação de cliente usando os cmdlets descritos na tabela a seguir.

Cmdlets de gerenciamento de diretivas de limitação de cliente em um servidor de Acesso para Cliente

Nome do cmdlet Descrição

New-ThrottlingPolicy

Esse cmdlet cria uma nova diretiva de limitação.

Remove-ThrottlingPolicy

Esse cmdlet remove uma diretiva de limitação.

Get-ThrottlingPolicy

Esse cmdlet permite exibir as configurações da diretiva de limitação.

Set-ThrottlingPolicy

Esse cmdlet modifica todas as configurações disponíveis para uma diretiva de limitação.

Dica

Para associar uma diretiva de limitação a um usuário único ou a um grupo de usuários, use o parâmetro ThrottlingPolicy com os cmdlets New-Mailbox e Set-Mailbox.

Gerenciando as configurações de diretiva de limitação de cliente para cada usuário

Você pode usar o parâmetro ThrottlingPolicy dos cmdlets Set-Mailbox e New-Mailbox no Shell de Gerenciamento do Exchange para associar as diretivas de limitação a um usuário ou grupo de usuários, modificando as propriedades em suas caixas de correio. Para mais informações, consulte Set-Mailbox e New-Mailbox.

Retornar ao início

Tarefas comuns de gerenciamento de diretivas de limitação

A seguir estão algumas maneiras como você pode gerenciar diretivas de limitação do cliente.

Recuperando a diretiva-padrão de limitação

Por padrão, as diretivas de limitação de cliente têm o parâmetro IsDefault definido como "true". Você pode recuperar a diretiva-padrão de limitação usando o filtro de where-object. O exemplo a seguir mostra como recuperar a diretiva-padrão de limitação.

Get-ThrottlingPolicy | where-object {$_.IsDefault -eq $true}

Recuperando a diretiva de limitação que administra um usuário

Você pode definir as políticas de limitação para cada usuário. Portanto, convém recuperar a diretiva que administra um usuário específico. Você pode obter o parâmetro ThrottlingPolicy da caixa de correio do usuário que você quiser e passar o parâmetro para o cmdlet Get-ThrottlingPolicy. No exemplo a seguir, será usada a caixa de correio de um usuário chamado Tony Smith.

$policy = $null;
$policyLink = (Get-Mailbox tonysmith).ThrottlingPolicy;
if ($policyLink -eq $null)
{ 
    $policy = Get-ThrottlingPolicy | where-object {$_.IsDefault -eq $true}
}
else
{
    $policy = $policyLink | Get-ThrottlingPolicy;

Criando uma diretiva de limitação nova, não-padrão

Para criar uma diretiva de limitação nova, não-padrão, execute o cmdlet New-ThrottlingPolicy e defina os parâmetros que você quiser. Nenhum parâmetro omitido herdará os valores da diretiva-padrão de limitação. O exemplo a seguir cria uma nova diretiva de limitação, ClientThrottlingPolicy2. A nova diretiva tem quase as mesmas configurações da diretiva-padrão de limitação. A diferença é que a nova diretiva de limitação não-padrão, ClientThrottlingPolicy2, define EWSPercentTimeInCAS como 80 e desativa a limitação do EWSPercentTimeInAD.

New-ThrottlingPolicy -Name ClientThrottlingPolicy2 -EWSPercentTimeInCAS 80 -EWSPercentTimeInAD $null;

Atribuindo uma diretiva não-padrão de limitação para um usuário

Para atribuir uma diretiva não-padrão de limitação para um usuário, use o cmdlet Set-Mailbox conforme mostrado a seguir.

$b = Get-ThrottlingPolicy ClientThrottlingPolicy2;
Set-Mailbox -Identity tonysmith -ThrottlingPolicy $b;

Se um usuário é administrado por uma diretiva não-padrão de limitação e você quiser que o usuário use a diretiva-padrão, pode parecer que você pode fazer essa alteração configurando o parâmetro ThrottlingPolicy para $null. Infelizmente, definir o parâmetro ThrottlingPolicy para $null não modifica o objeto de Caixa de Correio. Para fazer a diretiva-padrão de limitação se aplicar ao usuário, você deve explicitamente definir a diretiva-padrão de limitação para o usuário, usando o comando a seguir.

$policy = Get-ThrottlingPolicy | where-object {$_.IsDefault -eq $true}
Set-Mailbox -Identity tonysmith -ThrottlingPolicy $policy;

Localizar todos os usuários administrados por uma diretiva de limitação específica

Se você quiser saber quais usuários são administrados por uma diretiva de limitação específica, execute o cmdlet Get-Mailbox e filtre a identidade da diretiva de limitação, conforme o exemplo a seguir. Neste exemplo, $policy é a diretiva para o qual você está filtrando.

Get-Mailbox | where-object {$_.ThrottlingPolicy -eq $policy.Identity}

Removendo diretivas de limitação

Você pode remover somente as diretivas de limitação que não sejam padrão e não estejam associadas a nenhuma caixa de correio. Para fazer isso, execute o cmdlet Remove-ThrottlingPolicy e passe a identidade da diretiva de limitação, usando o comando a seguir.

Remove-ThrottlingPolicy ClientThrottlingPolicy2

Se você tiver uma diretiva de limitação associada aos usuários, você deverá primeiro reatribuir esses usuários a outra diretiva e, depois, você pode remover a diretiva desejada. O exemplo a seguir mostra como fazer isso.

$policy = Get-ThrottlingPolicy ClientThrottlingPolicy2;
$mailboxes = Get-Mailbox | where-object {$_.ThrottlingPolicy -eq $policy.Identity};
$defaultPolicy = Get-ThrottlingPolicy | where-object {$_.IsDefault -eq $true};
foreach ($mailbox in $mailboxes)
{
Set-Mailbox -Identity $mailbox.Identity -ThrottlingPolicy $defaultPolicy;
}
Remove-ThrottlingPolicy ClientThrottlingPolicy2;

Modificando diretivas de limitação

Você pode modificar uma diretiva de limitação existente (incluindo a padrão), executando o cmdlet Set-ThrottlingPolicy e especificando que parâmetros alterar. Por exemplo, para alterar o valor do parâmetro EWSMaxConcurrency da diretiva-padrão de limitação para 4, você pode usar o comando a seguir.

$a = Get-ThrottlingPolicy | where-object {$_.IsDefault -eq $true}
$a | Set-ThrottlingPolicy -EWSMaxConcurrency 4

Contadores de limitação de desempenho

Como a limitação ajuda a administrar o uso geral dos componentes do Exchange em um servidor do Exchange, é geralmente útil examinar como a limitação está afetando o sistema. O Exchange oferece um conjunto de contadores de limitação de desempenho por processo. Um processo do Exchange, como o Outlook Web App, terá seu próprio conjunto de contadores, por exemplo, e os Serviços Web do Exchange terão o seu. Na ferramenta de desempenho do Windows, esses contadores são chamados de instâncias.

Retornar ao início