Transferência Delta
Envie um repositório para outra máquina duas vezes. O primeiro envio transporta tudo. O segundo transporta apenas o que mudou: mesmo comando, sem sinalizadores, sem gestão manual. E não tem de acreditar à fé, porque o resultado do envio imprime exatamente quanto foi transferido.
Ver o tutorial
Blocos, não bytes
Após o primeiro envio, o CLI mantém uma imagem base imutável idêntica nas duas máquinas. O envio seguinte compara os blocos com essa base e envia apenas a diferença.
Passo 1: O envio de base
rdc repo push --name my-app --machine <machine-name> --to <target-machine> Faça push do repository para uma segunda máquina. O primeiro push transfere a imagem completa, e a saída reporta: 2 GB transferidos, marcado como (full). Uma base delta é mantida nos dois lados.
O resultado fala por si: 2.0 GB transferred in 44.4s (full). A imagem inteira viajou, e uma base delta idêntica ficou retida nos dois lados.
Passo 2: Alterar um pouco
rdc term connect --machine <machine-name> --repository my-app --command 'dd if=/dev/urandom of=delta-test.bin bs=1M count=50 status=none && ls -lh delta-test.bin' Escreva uma pequena quantidade de novos dados no repository.
Passo 3: Enviar a diferença
rdc repo push --name my-app --machine <machine-name> --to <target-machine> Faça push novamente com o mesmo comando: a saída reporta cerca de 50 MB transferidos como delta em relação à base compartilhada, de uma imagem de 2 GB. Apenas os blocos alterados foram enviados.
Mesmo comando, linha bem diferente: 50.8 MB transferred in 5.7s (delta vs base ..., image 2.0 GB). Cinquenta megabytes mudaram, por isso cerca de cinquenta megabytes viajaram, de uma imagem de dois gigabytes.
Passo 4: Sincronizados, em segundos
rdc repo list --machine <target-machine> A máquina de destino agora contém o repository atualizado, sincronizado ao custo do delta.
Ambas as máquinas têm o mesmo repositório, atualizado ao custo da alteração, não do tamanho. Os backups máquina-a-máquina de hora a hora deixam de ser caros.
Precisa de controlo explícito?
--delta-base <guid>fixa a base de comparação, e--strategyescolhe o algoritmo de delta por blocos. Por defeito, ambos são calculados automaticamente.
Próximo: Gestão de Armazenamento.