Práticas recomendadas para servir um grande número de arquivos

5

Atualmente, temos um Windows Server 2008 R2 como controlador de domínio e servidor de arquivos.

Estamos atendendo a cerca de 6 milhões de JPGs a 4 servidores IIS, que são exibidos aos usuários da Web.

O problema é que estamos recebendo alertas de memória no servidor diariamente. Nosso servidor atual serve esses arquivos de uma única unidade (LUN). Também temos um problema com o número de arquivos no disco. A tabela de arquivos mestre ficará muito grande à medida que continuarmos adicionando mais imagens.

Nosso plano atual é:

  • mova o servidor de arquivos para uma VM separada
  • adicione 4 ou 5 unidades separadas (LUNs) para veicular esses arquivos
  • passar para cerca de 15 milhões de imagens até o final deste ano (um pouco mais que o dobro do nosso número atual)

Minhas perguntas são:

  1. Qual é a prática recomendada para veicular arquivos?
  2. Estamos bem em mudar para um único servidor com 4 ou 5 unidades (LUNs) ou devemos passar para 2 servidores de arquivos com 3 unidades cada?
por Shannon Lowder 26.05.2011 / 14:25

2 respostas

1

Como você está recebendo alertas de memória? Você já fez alguma análise de processo para ver se o uso da memória está de alguma forma fora da norma? Lembre-se de que o LSASS e o cache crescerão até o ponto da memória física.

ATUALIZAÇÃO:

Não receber alertas no Windows Server 2003 não me surpreende, pois não foi tão eficiente no uso da RAM como o Windows Server 2008. Você quer o máximo de memória usada no servidor de uso, e é por isso que monitorar apenas o uso de memória é uma métrica inútil. A partir do Windows Vista, o Windows usa o máximo de RAM possível. Você pode ver esse mesmo comportamento no Windows 7, trazendo o monitor de recursos e olhando para a guia de memória. Aqui está uma imagem da minha máquina atualmente:

Observe que eu tenho apenas 64MB grátis! Isso é uma coisa boa. (costumava ser 2MB, mas devo ter acabado de fechar alguma coisa). Observe que a barra azul mostra 1369MB de RAM em standby - que é basicamente o cache no sistema de arquivos e se eu precisava de mais RAM em um aplicativo, é daí que as páginas vêm.

Então, o que você precisa saber não é quanto RAM é usada, mas quanto cada aplicativo está usando e se o uso de memória desse aplicativo em particular é normal.

Uma boa maneira de determinar isso (para gerar um alerta de aviso) seria examinar o uso da memória e as falhas de página por segundo. Se você tiver falhas excessivas de página E tiver alta utilização de RAM E tiver pouca RAM em espera, é provável que haja um problema. (em uma página do servidor de arquivos, as falhas não são um indicador de problemas tão confiável, já que estão servindo arquivos - gerando assim falhas de página, você deve basear isso antes de definir um limite)

Espero que esta breve visão geral sobre monitoramento de memória ajude.

    
por 26.05.2011 / 15:23
1

Você deve passar para 2 (ou mais) ou mais servidores para redundância. Se você balancear a carga deles, será mais fácil fazer um down / reboot para manutenção. Se você tem 3 servidores, mas só precisa de 2, então sua janela de manutenção pode ser durante o dia também.

Eu também distribuiria as unidades (LUNs) por esses servidores - novamente para redundância.

    
por 26.05.2011 / 14:35