Qual é a diferença entre rMB_nor / s, rMB_dir / s e rMB_svr / s no iostat?

1

Estou tentando interpretar os resultados da execução do seguinte comando

iostat -mnhyc

Produz o seguinte

Filesystem:               rMB_nor/s    wMB_nor/s    rMB_dir/s    wMB_dir/s    rMB_svr/s    wMB_svr/s     ops/s    rops/s    wops/s

/NFS_mount_path/    
                         376.46         0.00         0.00         0.00         0.98         0.00    132.80    129.60      0.00

Quantos dados estão sendo lidos na minha montagem NFS? Devo considerar rMB_nor / s ou rMB_svr / s? A página man do iostat diz que rMB_nor / s é o número de MB lidos pelos aplicativos por meio da chamada read (2) e rMB_svr / s é o número de MB lidos do servidor pelo cliente NFS por meio de uma solicitação READ do NFS. Mas eu não entendo exatamente o que é diferente neles. Qual é a diferença entre uma leitura de NFS e uma leitura (2)? Todas as leituras para a montagem NFS não deveriam ser uma LEITURA NFS? Não devo esperar que rMB_svr / s seja maior ou igual a rMB_nor / s?

    
por adhanlon 18.12.2014 / 18:33

1 resposta

1

Se os dados estiverem disponíveis no cache do sistema de arquivos, o syscall 'read' obterá os dados, mas não haverá solicitações de leitura enviadas ao servidor NFS. Isso pode acontecer quando um aplicativo lê os mesmos blocos várias vezes ou quando o usuário abre o mesmo arquivo várias vezes. Você pode liberar o cache do sistema de arquivos e observar o resultado do iostat novamente:

# echo 3 > /proc/sys/vm/drop_caches
    
por 19.12.2014 / 09:26

Tags