A solução usual é fazer upload usando um nome temporário e renomear quando o upload for concluído.
Eu preciso atualizar um arquivo em um servidor a cada quinze ou mais minutos. Isso envolve uma cópia de arquivo de um site de criação no servidor.
Ocasionalmente (e com muito azar) o aplicativo .Net que serve o arquivo o lê em um período no tempo em que o arquivo está sendo sobrescrito e, portanto, é lido em um arquivo vazio. O problema é agravado porque, por motivos de desempenho, o arquivo é armazenado em cache por até 15 minutos.
Existe alguma maneira no Windows para minimizar a possibilidade de o arquivo ficar em branco? Ou seja, existe uma maneira de copiar o conteúdo para o arquivo, mas não "commitá-lo" para o sistema de arquivos até que esteja totalmente escrito?
O arquivo é copiado usando SSH / FTP como se estivesse em uma caixa sem domínio na DMZ e hospedado em máquinas Windows 2008 R1.
Tags ssh ftp windows-server-2008