Eu tenho um aplicativo de terceiros que lê vários arquivos grandes e gera um terceiro arquivo grande. Seu desempenho é muito bom quando o arquivo gerado é armazenado em "armazenamento local", ou seja, um disco conectado diretamente ou baseado em iSCSI. Os arquivos de origem que são lidos podem ser armazenados remotamente em nosso NAS e acessados via SMB com pouco efeito no desempenho.
No entanto, se tentarmos gravar o arquivo de destino em qualquer tipo de compartilhamento SMB / CIFS (Samba ou Windows Server), o desempenho cai quase dez vezes. Isso é inaceitavelmente lento no nosso caso.
Gravar arquivos em compartilhamentos de rede não é lento. Eu posso copiar arquivos grandes para compartilhamentos SMB e obter um ótimo desempenho - perto do que eu esperaria que fosse possível, dados os discos e a rede em questão.
Eu tenho uma teoria de que o problema desse aplicativo com compartilhamentos SMB tem algo a ver com a falta de cache de gravação sobre o compartilhamento e talvez muitas viagens de ida e volta na rede. Isso é possível e há algo que possa ser feito sobre isso?