Em consumer você pode usar este comando rsync.
rsync -az --remove-source-files user@producer:/some/path/ /some/path/
Então, quando o processo estiver concluído, o seu processo consumer excluirá o arquivo.
rm -f /some/path/file
Digamos que tenhamos dois hosts producer e consumer e o seguinte processo:
producer adiciona arquivos regularmente a /some/path . consumer extrai esses arquivos para seus próprios /some/path (por exemplo, via rsync ) e processa para eles. consumer para excluir os arquivos processados (e somente os arquivos processados) em ambos os hosts.
Pode (3) ser realizado com rsync ou um comando equivalente por consumer ?
Como alternativa, podemos ter consumer excluindo facilmente os arquivos de producer que são transferidos conforme processa a etapa (2)?
Observe que producer está sempre criando arquivos e queremos garantir que processemos cada arquivo em consumer uma vez e somente uma vez.