É uma boa prática usar a compactação NTFS em pastas e arquivos de log do IIS?
Consegui diminuir de 20 GB para 7 GB ao fazer isso. Os logs do IIS são por dia e têm um tamanho médio de 20 MB, mas em alguns dias extremos há 200 MB.
Gostaria de saber se o IIS precisa abrir o arquivo inteiro na memória, forçando o NTFS a descompactar 20 MB (ou 200 MB em casos extremos) a cada vez? Ou existe alguma mágica que permite ao IIS anexar conteúdo? Qual o impacto do sistema? Poderia se tornar um problema se aumentarmos nosso tráfego?
Devo dividi-los por hora em vez de por dia?
Algum documento oficial da Microsoft sobre isso? Não consegui localizar um.
iis
logging
ntfs
compression
Malartre
fonte
fonte
Respostas:
Como Evan já deu uma resposta geral, gosto de abordar duas de suas sub-perguntas:
O IIS libera logs a cada X minutos?
http.sys, a parte do modo kernel do IIS é responsável pelo log e armazena em buffer os dados na memória antes de gravá-los nos arquivos de log. Não tenho certeza, mas acho que ele não libera a cada x segundos, provavelmente depois que o buffer está ficando cheio.
O arquivo inteiro precisa ser lido ao adicionar uma única linha?
Não, o NTFS grava atualizações em um arquivo em seu próprio cache e compacta e anexa os dados de forma assíncrona ao arquivo. A gravação em um arquivo compactado não é significativamente mais lenta que em um arquivo não compactado.
Portanto, não deve haver problemas com o uso da compactação NTFS nos arquivos de log do IIS.
Fontes:
IIS 7 Resource Kit, Capítulo 15: Log - Microsoft Press 2008
Windows Internals 6th Edition Part2, Capítulo 12: Sistemas de Arquivos Microsoft Press 2012
fonte
If you run a program that uses transaction logging and that constantly writes to a database or log, configure the program to store its files on a volume that is not compressed. If a program modifies data through mapped sections in a compressed file, the program can produce "dirty" pages faster than the mapped writer can write them.
pergunta é: qual é a definição de constantemente ?Compacto meus logs do IIS em muitos servidores IIS, principalmente servidores que hospedam o Outlook Web Access / App ou sites de baixo volume. Não tenho problemas em fazer isso e gosto bastante da economia de espaço em disco.
Em geral, você está trocando CPU por armazenamento, tomando essa decisão. Se você está vinculado à CPU, provavelmente não é uma boa escolha. Para meus servidores OWA, que podem gerar gigabytes de logs por dia (graças aos dispositivos ActiveSync), acho que a troca é boa.
O driver do sistema de arquivos NTFS lida com a compactação, portanto, não altera a maneira como o IIS grava nos arquivos.
Editar:
Você também pode trocar parte da largura de banda de E / S e IOPS. Se você tiver um volume alto o suficiente para que suas gravações de log sejam um consumo significativo de recursos de E / S, também poderá haver um declínio no consumo de E / S ao permitir a compactação.
A única maneira de dizer como isso afeta você é compará-lo você mesmo. Pegue uma linha de base com a compactação desabilitada e, em seguida, habilitada e compare-a. Não há uma varinha mágica para acenar para saber como isso afetará você - existem muitos fatores não determinísticos em jogo.
fonte