Você tem algum motivo para supor que é ligado à CPU de alguma forma?
Chopper3
Quais opções de rsync você está usando?
Kyle Smith
Você está usando ssh como transporte?
JimB
rsync -avSPp E não há problemas de CPU nem de disco.
Tom van Ommen
E nenhum transporte SSH apenas viu algo na web não saber se é mais rápido. Já leva séculos para indexar todos os arquivos.
Tom van Ommen
Respostas:
7
Duvido que a CPU seja o fator limitante aqui. Você provavelmente está limitado pela largura de banda da rede para a transferência e pelas E / S do disco; especialmente latência para todas essas chamadas de estatísticas.
Você pode dividir a hierarquia do sistema de arquivos em pedaços menores para processar em paralelo?
Quais são os arquivos de origem e o que os está escrevendo ou modificando? Seria possível enviar alterações conforme elas ocorrem no nível do aplicativo?
Sincronizando arquivos de anexo do Zarafa, todos compactados por padrão. Eu poderia executar várias instâncias, mas isso é menos eficiente do que 10 threads. E a rede é de 1 GB a 1 GB, mas datacenters diferentes, mas não deve ser um problema. obteve 24 discos SAS no lado da fonte e armazenamento inteligente com SSD no destino.
Tom van Ommen
1
@ Tom van Ommen - por que você acha que está com CPU limitada? Como vários processos são menos eficientes que os threads, se você realmente tem CPU limitada?
JimB
1
@ Tom van Ommen, 10 processos têm mais sobrecarga do que 10 threads; no entanto, bloquear estruturas de dados entre threads é um pesadelo de codificação. Muitas vezes é muito mais eficiente (para o tempo do codificador) para apenas gerar vários processos e ser feito com ele
Mike Pennington
1
@Guacamole - vários threads podem ajudar em algumas situações, mas se o link estiver saturado, ele não fará mais push, não importa quantos threads ele tenha. O Rsync usa threads para simultaneidade e não está bloqueando internamente o IO.
JimB
1
@Guacamole - Tudo o que estou apontando é que, se ele estiver usando ssh como transporte, seu rendimento será limitado pelo próprio ssh (especificamente a janela de recebimento estático, a menos que esteja usando os patches ssh da HPN).
JimB
1
Se o subsistema de disco do servidor de recebimento for uma matriz com vários discos, a execução de vários processos rsync poderá melhorar o desempenho. Estou executando 3 processos rsync para copiar arquivos para um servidor NFS (RAID6 com 6 discos por grupo de ataques) para saturar a Ethernet Gigabit.
Infelizmente, o link está morto. Você poderia encontrá-lo novamente?
P.Péter 27/09/18
1
Eu li muitas perguntas semelhantes a isso. Eu acho que a única resposta real é quebrar a cópia / mover manualmente. IOps será o problema aqui. Se você se sentir melhor, estou no processo de mover ~ 200 milhões de arquivos consumindo bem mais de 100 TB de espaço em disco.
Respostas:
Duvido que a CPU seja o fator limitante aqui. Você provavelmente está limitado pela largura de banda da rede para a transferência e pelas E / S do disco; especialmente latência para todas essas chamadas de estatísticas.
Você pode dividir a hierarquia do sistema de arquivos em pedaços menores para processar em paralelo?
Quais são os arquivos de origem e o que os está escrevendo ou modificando? Seria possível enviar alterações conforme elas ocorrem no nível do aplicativo?
fonte
Se o subsistema de disco do servidor de recebimento for uma matriz com vários discos, a execução de vários processos rsync poderá melhorar o desempenho. Estou executando 3 processos rsync para copiar arquivos para um servidor NFS (RAID6 com 6 discos por grupo de ataques) para saturar a Ethernet Gigabit.
Esse cara relata um chicote básico de python que gera vários processos rsync http://www.reliam.com/company/featured_geek
fonte
Eu li muitas perguntas semelhantes a isso. Eu acho que a única resposta real é quebrar a cópia / mover manualmente. IOps será o problema aqui. Se você se sentir melhor, estou no processo de mover ~ 200 milhões de arquivos consumindo bem mais de 100 TB de espaço em disco.
fonte
Você pode considerar verificar o clone cp multithread para linux (código aberto): http://static.usenix.org/event/lisa10/tech/slides/kolano.pdf
fonte