Teste de carga de preflight

tools\Run-PreflightStress.ps1 compila a HotPDFPreflight console tool, executa-a sobre um grande diretório de PDF um ficheiro de cada vez, escreve relatórios e registos por ficheiro e grava uma linha de base de desempenho em JSON / Markdown. Cada ficheiro é isolado atrás de um timeout para que um único PDF caro não possa bloquear toda a execução O timeout predefinido é de 120 segundos para permitir que ficheiros grandes com limites de implementação terminem enquanto ainda se isolam entradas patológicas

Execução predefinida

powershell -NoProfile -ExecutionPolicy Bypass -File tools\Run-PreflightStress.ps1

A raiz de amostras por omissão é D:\PDFdoc\PDF-Samples. A saída da execução é escrita em Tests\PreflightStress\runs\, que é ignorado pelo Git porque os relatórios e registos são específicos da máquina

Raiz de amostras personalizada

powershell -NoProfile -ExecutionPolicy Bypass -File tools\Run-PreflightStress.ps1 `
  -SampleRoot D:\PDFdoc\PDF-Samples `
  -OutputRoot D:\Temp\HotPDFPreflightStress `
  -MaxFiles 1000 `
  -MaxBytes 5242880 `
  -MaxSecondsPerFile 120

Métricas

A linha de base captura a contagem total de ficheiros de entrada, a contagem de ficheiros seleccionados, totais de bytes, os maiores e menores tamanhos de entrada seleccionados, contagens processadas / aprovadas / falhadas / expiradas, segundos decorridos, ficheiros por segundo, MiB por segundo, formato de saída, predefinição seleccionada, caminho CSV por ficheiro, raiz dos relatórios e raiz dos registos

Interpretar falhas

Uma linha falhada ou expirada significa que um PDF não pôde ser processado dentro dos limites actuais da execução. O script continua a escrever a linha de base e termina com sucesso para que os trabalhos de regressão possam guardar a evidência. Trate um aumento súbito nas falhas, nas linhas expiradas ou uma quebra acentuada de débito como sinal para inspeccionar o registo e o directório de relatórios por ficheiro

Tópicos relacionados