Ajuste de desempenho para hosts da Sessão da Área de Trabalho Remota

Este tópico aborda como selecionar o hardware do Host da Sessão da Área de Trabalho Remota (Host da Sessão RD), ajustar o host e ajustar os aplicativos.

Neste tópico:

Selecionar o hardware adequado para desempenho

Para uma implantação de servidor Host da Sessão da Área de Trabalho Remota, a escolha do hardware é controlada pelo conjunto de aplicativos e como eles são usados pelos usuários. Os principais fatores que afetam o número de usuários e a experiência deles são CPU, memória, disco e elementos gráficos. Esta seção contém diretrizes adicionais específicas dos servidores Host da Sessão da Área de Trabalho Remota e está principalmente relacionada ao ambiente de vários usuários dos servidores Host da Sessão da Área de Trabalho Remota.

Configuração da CPU

A configuração da CPU é conceitualmente determinada pela multiplicação da CPU necessária para dar suporte a uma sessão pelo número de sessões às quais o sistema deve dar suporte, mantendo uma zona de buffer para lidar com picos temporários. O uso de processadores lógicos múltiplos pode ajudar a reduzir situações anormais de congestionamento da CPU, que geralmente são causadas por alguns threads superativos contidos por um número semelhante de processadores lógicos.

Portanto, quanto mais processadores lógicos em um sistema, menor a margem de amortecimento que precisa ser incorporada à estimativa de uso da CPU, o que resulta em um percentual maior de carga ativa por CPU. Um fator importante a ser lembrado é que dobrar o número de CPUs não dobra a capacidade da CPU.

Configuração de memória

A configuração de memória depende dos aplicativos que os usuários empregam. No entanto, a quantidade necessária de memória pode ser estimada com a seguinte fórmula: TotalMem = OSMem + SessionMem * NS

OSMem é a quantidade de memória de que o sistema operacional precisa para execução (como imagens binárias do sistema, estruturas de dados etc.), SessionMem é a quantidade de processos de memória em execução em uma sessão necessária e NS é o número de destino de sessões ativas. A quantidade de memória necessária para uma sessão é determinada principalmente pelo conjunto de referências de memória privada para aplicativos e processos do sistema que estão em execução na sessão. O código compartilhado ou as páginas de dados têm pouco efeito, porque apenas uma cópia está presente no sistema.

Uma observação interessante (supondo que o sistema de disco que está fazendo backup do arquivo de página não seja alterado) é que quanto maior o número de sessões ativas simultâneas às quais o sistema planeja dar suporte, maior será a alocação de memória por sessão. Se a quantidade de memória alocada por sessão não for aumentada, o número de falhas de página que as sessões ativas geram aumentará com o número de sessões. Em última análise, essas falhas sobrecarregam o subsistema de E/S. Ao aumentar a quantidade de memória alocada por sessão, a probabilidade de gerar falhas de página diminui, o que ajuda a reduzir a taxa geral de falhas de página.

Configuração de disco

O armazenamento é um dos aspectos mais negligenciados quando você configura servidores Host da Sessão da Área de Trabalho Remota e pode ser a limitação mais comum em sistemas implantados no campo.

A atividade de disco gerada em um servidor Host da Sessão da Área de Trabalho Remota típico afeta as seguintes áreas:

  • Arquivos do sistema e binários de aplicativo

  • Arquivos de paginação

  • Perfis de usuário e dados do usuário

O ideal é que essas áreas tenham o suporte de dispositivos de armazenamento distintos. O uso de configurações RAID distribuídas ou outros tipos de armazenamento de alto desempenho aprimora ainda mais o desempenho. É altamente recomendável que você use adaptadores de armazenamento com cache de gravação com suporte à bateria. Os controladores com cache de gravação em disco oferecem suporte aprimorado para operações de gravação síncronas. Como todos os usuários têm um hive separado, as operações de gravação síncronas são consideravelmente mais comuns em um servidor Host da Sessão da Área de Trabalho Remota. Os hives do Registro são salvos periodicamente em disco com operações de gravação síncronas. Para habilitar essas otimizações, no console do Gerenciamento de Disco, abra a caixa de diálogo Propriedades do disco de destino e, na guia Políticas, selecione as caixas de seleção Habilitar cache de gravação no disco e Desativar a liberação do buffer de cache de gravação do Windows no dispositivo.

Configuração de rede

O uso de rede para um servidor Host da Sessão da Área de Trabalho Remota inclui duas categorias principais:

  • O uso do tráfego de conexão do Host da Sessão da Área de Trabalho Remota é determinado quase exclusivamente pelos padrões de desenho exibidos pelos aplicativos em execução nas sessões e pelo tráfego de E/S dos dispositivos redirecionados.

    Por exemplo, os aplicativos que lidam com processamento de texto e entrada de dados consomem largura de banda de aproximadamente 10 a 100 quilobits por segundo, enquanto elementos gráficos sofisticados e reprodução de vídeo causam aumentos significativos no uso da largura de banda.

  • Conexões de back-end, como perfis móveis, acesso de aplicativos a compartilhamentos de arquivos, servidores de banco de dados, servidores de email e servidores HTTP.

    O volume e o perfil do tráfego de rede são específicos de cada implantação.

Como ajustar aplicativos para o Host da Sessão da Área de Trabalho Remota

A maior parte do uso da CPU em um servidor Host da Sessão de Área de Trabalho Remota é controlada por aplicativos. Os aplicativos da área de trabalho geralmente são otimizados para a capacidade de resposta com o objetivo de minimizar o tempo que um aplicativo leva para responder a uma solicitação do usuário. No entanto, em um ambiente de servidor, é igualmente importante minimizar a quantidade total de uso da CPU necessária para realizar uma ação, a fim de evitar afetar negativamente outras sessões.

Considere as seguintes sugestões ao configurar aplicativos que devem ser usados em um servidor Host da Sessão da Área de Trabalho Remota:

  • Minimizar o processamento de loop ocioso em segundo plano

    Exemplos típicos são desabilitar a gramática e a verificação ortográfica em segundo plano, a indexação de dados para pesquisa e os salvamentos em segundo plano.

  • Minimize a frequência com que um aplicativo executa uma verificação ou uma atualização de estado.

    Desabilitar esses comportamentos ou aumentar o intervalo entre as iterações de sondagem e disparo do temporizador beneficia consideravelmente o uso da CPU, porque o efeito dessas atividades é amplificado rapidamente para muitas sessões ativas. Exemplos típicos são ícones de status de conexão e atualizações de informações da barra de status.

  • Minimize a contenção de recursos entre aplicativos reduzindo a frequência de sincronização.

    Exemplos desses recursos incluem chaves do Registro e arquivos de configuração. Exemplos de componentes e recursos do aplicativo são indicador de status (como notificações de shell), indexação em segundo plano ou monitoramento de alterações e sincronização offline.

  • Desabilite processos desnecessários registrados para serem iniciados com a entrada do usuário ou uma inicialização de sessão.

    Esses processos podem contribuir consideravelmente para o custo de uso da CPU ao criar uma sessão de usuário, que geralmente é um processo com uso intensivo de CPU e que pode ser muito caro em cenários de uso matinal. Use o MsConfig.exe ou o MsInfo32.exe para ver a lista de processos iniciados na entrada do usuário. Para obter informações mais detalhadas, use Execuções automáticas do Windows.

Para o consumo de memória, você deve considerar o seguinte:

  • Verifique se as DLLs carregadas por um aplicativo não foram relocadas.

    • As DLLs relocadas podem ser verificadas pela seleção da exibição DLL do Processo, conforme mostrado na figura a seguir, usando o Gerenciador de Processos.

    • Aqui podemos ver que a y.dll foi relocada, porque a x.dll já ocupava o endereço base padrão e o ASLR não estava habilitado

      relocated dlls

      Se as DLLs forem relocadas, será impossível compartilhar o código delas entre sessões, o que aumenta consideravelmente o volume de uma sessão. Esse é um dos problemas de desempenho mais comuns relacionados à memória em um servidor Host da Sessão de Área de Trabalho Remota.

  • Para aplicativos CLR (Common Language Runtime), use o Gerador de Imagem Nativa (Ngen.exe) para aumentar o compartilhamento de páginas e reduzir a sobrecarga da CPU.

    Quando possível, aplique técnicas semelhantes a outros mecanismos de execução similares.

Parâmetros de ajuste do Host da Sessão da Área de Trabalho Remota

Arquivo de paginação

O tamanho insuficiente do arquivo de página pode causar falhas de alocação de memória em aplicativos ou componentes do sistema. Use o contador de desempenho de bytes de memória para confirmação para monitorar a quantidade de memória virtual confirmada no sistema.

Antivírus

A instalação de um software antivírus em um servidor Host da Sessão da Área de Trabalho Remota afeta substancialmente o desempenho geral do sistema, especialmente o uso da CPU. É altamente recomendável excluir da lista de monitoramento ativo todas as pastas que contêm arquivos temporários, especialmente aqueles gerados por serviços e por outros componentes do sistema.

Agendador de Tarefas

O Agendador de Tarefas permite analisar a lista de tarefas agendadas para diferentes eventos. Para um servidor Host da Sessão de Área de Trabalho Remota, é útil se concentrar especificamente nas tarefas configuradas para execução em ociosidade, na entrada do usuário ou na conexão e na desconexão da sessão. Devido às especificidades da implantação, muitas dessas tarefas podem ser desnecessárias.

Ícones de notificação da área de trabalho

Os ícones de notificação na área de trabalho podem ter mecanismos de atualização bastante caros. Você deve desabilitar as notificações removendo o componente que as registra da lista de inicialização ou alterando a configuração em aplicativos e componentes do sistema para desabilitá-las. Use Personalizar Ícones de Notificações para analisar a lista de notificações disponíveis no servidor.

Compactação de dados do protocolo RDP

A compactação do protocolo RDP pode ser configurada por meio da Política de Grupo em Configuração do Computador>Modelos Administrativos>Componentes do Windows>Serviços de Área de Trabalho Remota>Host da Sessão da Área de Trabalho Remota>Ambiente de Sessão Remota>Configurar compactação para dados do RemoteFX. Três valores são possíveis:

  • Otimizado para usar menos memória Consome a menor quantidade de memória por sessão, mas tem a menor taxa de compactação e, portanto, o maior consumo de largura de banda.

  • Equilibra a memória e a largura de banda de rede Redução do consumo de largura de banda, aumentando marginalmente o consumo de memória (aproximadamente 200 KB por sessão).

  • Otimizado para usar menos largura de banda de rede Reduz ainda mais o uso de largura de banda de rede a um custo de aproximadamente 2 MB por sessão. Se você quiser usar essa configuração, avalie o número máximo de sessões e teste-o para esse nível com essa configuração antes de colocar o servidor em produção.

Você também pode optar por não usar um algoritmo de compactação do protocolo RDP. Portanto, recomendamos usá-lo apenas com um dispositivo de hardware projetado para otimizar o tráfego de rede. Mesmo que você opte por não usar um algoritmo de compactação, alguns dados de elementos gráficos serão compactados.

Redirecionamento de dispositivo

O redirecionamento de dispositivo pode ser configurado por meio da Política de Grupo em Configuração do Computador>Modelos Administrativos Componentes>Componentes do Windows>Serviços de Área de Trabalho Remota>Host da Sessão da Área de Trabalho Remota>Redirecionamento de Dispositivo e Recursos ou usando a caixa de propriedades Coleção de Sessão no Gerenciador do Servidor.

Em geral, o redirecionamento de dispositivo aumenta a quantidade de largura de banda de rede usada pelas conexões de servidor do Host da Sessão da Área de Trabalho Remota, porque os dados são trocados entre dispositivos nos computadores cliente e nos processos que estão em execução na sessão do servidor. A extensão do aumento é uma função da frequência de operações executadas pelos aplicativos em execução no servidor em relação aos dispositivos redirecionados.

O redirecionamento da Impressora e o redirecionamento de dispositivo Plug and Play também aumentam o uso da CPU na entrada. Você pode redirecionar as impressoras de duas maneiras:

  • Fazendo a correspondência do redirecionamento baseado em driver de impressora quando um driver para a impressora precisa ser instalado no servidor. As versões anteriores do Windows Server usavam esse método.

  • Apresentado no Windows Server 2008, o redirecionamento do driver de impressora Easy Print usa um driver de impressora comum para todas as impressoras.

Recomendamos o método Easy Print porque ele causa menos uso da CPU para instalação da impressora no momento da conexão. O método de driver correspondente causa um aumento no uso da CPU, porque exige que o serviço de spooler carregue drivers diferentes. Para o uso de largura de banda, o Easy Print causa um uso um pouco maior de largura de banda de rede, mas não significativo o suficiente para desequilibrar os outros benefícios de desempenho, capacidade de gerenciamento e confiabilidade.

O redirecionamento de áudio causa um fluxo constante de tráfego de rede. O redirecionamento de áudio também permite que os usuários executem aplicativos multimídia que normalmente têm um alto consumo da CPU.

Configurações da experiência do cliente

Por padrão, a RDC (Conexão de Área de Trabalho Remota) escolhe automaticamente a configuração de experiência certa com base na adequação da conexão de rede entre o servidor e os computadores cliente. Recomendamos que a configuração da RDC permaneça em Detectar a qualidade da conexão automaticamente.

Para os usuários avançados, a RDC fornece controle sobre uma variedade de configurações que influenciam o desempenho da largura de banda da rede para a conexão dos Serviços de Área de Trabalho Remota. Você pode acessar as configurações a seguir usando a guia Experiência da Conexão de Área de Trabalho Remota ou como configurações no arquivo RDP.

As seguintes configurações se aplicam ao se conectar a qualquer computador:

  • Desabilitar papel de parede (Desabilitar papel de parede:i:0) Não mostra o papel de parede da área de trabalho em conexões redirecionadas. Essa configuração poderá reduzir consideravelmente o uso de largura de banda se o papel de parede da área de trabalho consistir em uma imagem ou em outro conteúdo com custos significativos para desenho.

  • Cache de bitmap (Bitmapcachepersistenable:i:1) Quando essa configuração é habilitada, ela cria um cache do lado do cliente de bitmaps que são renderizados na sessão. Ela fornece um aprimoramento significativo no uso da largura de banda e deve estar sempre habilitado (a menos que haja outras considerações sobre segurança).

  • Mostrar o conteúdo das janelas enquanto arrasta (Desabilitar arrastar janela por completo:i:1) Quando essa configuração é desabilitada, ela reduz a largura de banda exibindo apenas o quadro da janela em vez de todo o conteúdo quando a janela é arrastada.

  • Animação de menu e janela (Desabilitar animações de menus:i:1 e Desabilitar configuração do cursor:i:1): quando essas configurações são desabilitadas, isso reduz a largura de banda desabilitando a animação em menus (como desvanecimento) e cursores.

  • Suavização de fonte (Permitir suavização de fonte:i:0) Controla o suporte à renderização de fonte ClearType. Durante a conexão com computadores que executam o Windows 8 ou o Windows Server 2012 e superior, a habilitação ou a desabilitação dessa configuração não tem um impacto significativo no uso da largura de banda. No entanto, para computadores que executam versões anteriores ao Windows 7 e ao Windows 2008 R2, a habilitação dessa configuração afeta consideravelmente o consumo de largura de banda de rede.

As seguintes configurações só se aplicam ao se conectar a computadores que executam o Windows 7 e versões anteriores do sistema operacional:

  • Composição da área de trabalho Só há suporte para essa configuração em uma sessão remota de um computador que executa o Windows 7 ou o Windows Server 2008 R2.

  • Estilos visuais (Desabilitar temas:i:1) Quando essa configuração é desabilitada, ela reduz a largura de banda simplificando os desenhos de tema que usam o tema Clássico.

Usando a guia Experiência na Conexão de Área de Trabalho Remota, você pode escolher a velocidade de conexão para influenciar o desempenho da largura de banda da rede. O seguinte lista as opções disponíveis para configurar a velocidade da conexão:

  • Detectar a qualidade da conexão automaticamente (Tipo de conexão:i:7) Quando essa configuração estiver habilitada, a Conexão de Área de Trabalho Remota escolherá automaticamente as configurações que resultarão na experiência ideal do usuário de acordo com a qualidade da conexão. (Essa configuração é recomendada quando a conexão é feita com computadores que executam o Windows 8 ou o Windows Server 2012 e superior).

  • Modem (56 Kbps) (Tipo de conexão:i:1) Essa configuração habilita o cache de bitmap persistente.

  • Banda Larga de Baixa Velocidade (256 Kbps – 2 Mbps) (Tipo de conexão:i:2) Essa configuração habilita o cache de bitmap persistente e os estilos visuais.

  • Celular/Satélite (2 Mbps – 16 Mbps com alta latência) (Tipo de conexão:i:3) Essa configuração permite a composição da área de trabalho, o cache de bitmap persistente, os estilos visuais e a tela de fundo da área de trabalho.

  • Banda larga de alta velocidade (2 Mbps – 10 Mbps) (Tipo de conexão:i:4) Essa configuração habilita a composição da área de trabalho, mostra o conteúdo das janelas ao arrastá-las, a animação de menu e de janela, o cache de bitmap persistente, os estilos visuais e a tela de fundo da área de trabalho.

  • WAN (10 Mbps ou superior com alta latência) (Tipo de conexão:i:5) Essa configuração habilita a composição da área de trabalho, além de mostrar o conteúdo das janelas ao arrastá-las, a animação de menu e de janela, o cache de bitmap persistente, os estilos visuais e as tela de fundo da área de trabalho.

  • LAN (10 Mbps ou superior) (Tipo de conexão:i:6) Essa configuração habilita a composição da área de trabalho, mostra o conteúdo das janelas ao arrastá-la, a animação de menu e de janela, o cache de bitmap persistente, os temas e a tela de fundo da área de trabalho.

Tamanho da área de trabalho

O tamanho da área de trabalho para sessões remotas pode ser controlado por meio da guia Tela da Conexão de Área de Trabalho Remota ou do arquivo de configuração da RDP (desktopwidth:i:1152 e desktopheight:i:864). Quanto maior o tamanho da área de trabalho, maior o consumo de memória e largura de banda associado a essa sessão. O tamanho máximo atual da área de trabalho é 4096 x 2048.