Como otimizar as tarefas de miniaturas de fotografias em torno das janelas de cópia de segurança

Eva Wong é a Redatora Técnica e e entusiasta residente na ZimaSpace. Uma geek de longa data com paixão por homelabs e software de código aberto, ela é especialista em traduzir conceitos técnicos complexos em guias acessíveis e práticos . Eva acredita que o auto-hospedagem deve ser divertida, não intimidante. Através dos seus tutoriais, ela capacita a comunidade adesmistificar configurações de hardware , desde a construção do seu primeiro NAS até dominar os contêineres Docker., from building their first NAS to mastering Docker containers.

A geração de miniaturas lê os originais, grava muitos derivados pequenos, atualiza linhas da base de dados e pode competir pelo CPU com a codificação de vídeo ou a aprendizagem automática. Executá-la durante uma cópia de segurança do NAS pode prolongar ambas as tarefas e aumentar a latência da navegação interativa pelas fotografias.

O objetivo não é tornar as miniaturas permanentemente lentas. Meça qual é o recurso que entra em conflito com a cópia de segurança, reduza apenas a simultaneidade relevante e atribua a cada tarefa pesada uma janela definida, com uma regra de recuperação caso ultrapasse o tempo previsto. Mantenha documentadas as definições normais dos trabalhadores, para que a limitação temporária não se transforme numa limitação permanente despercebida.

Meça o conflito antes de alterar os trabalhadores

Execute uma cópia de segurança normal sem acumulação de miniaturas e registe a duração, a latência do armazenamento, o débito da rede e a utilização do CPU. Noutro dia, processe um lote representativo de miniaturas sem tráfego de cópia de segurança e recolha as mesmas métricas.

O recurso limitado determina a solução. Uma latência elevada do disco sugere escalonar as cargas de leitura e escrita; um CPU saturado sugere reduzir o número de trabalhadores de imagens; um volume da base de dados ocupado pode exigir separar o armazenamento da base de dados do armazenamento dos derivados.

O Immich disponibiliza filas de tarefas e controlos dos trabalhadores descritos na sua documentação sobre tarefas e trabalhadores. Registe os valores atuais antes de os editar, para que uma experiência falhada tenha uma reversão limpa.

Defina uma janela de silêncio e uma regra para prolongamentos

Coloque as cópias de segurança na janela com maiores exigências de recuperação e reserve uma janela seguinte ou anterior para o trabalho das miniaturas. Evite iniciar ambas no mesmo minuto, porque o arranque das filas pode criar um pico de abertura de ficheiros e de atividade da base de dados.

Defina o que acontece se uma cópia de segurança se prolongar. Uma regra segura consiste em manter os trabalhadores de miniaturas reduzidos ou pausados até a cópia de segurança indicar a conclusão e, em seguida, repor a sua simultaneidade normal, em vez de permitir que os dois agendamentos se sobreponham sem controlo.

Mantenha uma janela de recuperação após importações de grande dimensão. Sem ela, um limite reduzido de trabalhadores durante a noite pode deixar os utilizadores à espera das miniaturas durante dias, apesar de haver recursos disponíveis durante o dia.

Ajuste a simultaneidade ao estrangulamento

Altere uma classe de trabalhadores ou um valor de simultaneidade de cada vez e processe um lote do mesmo tamanho. Compare a velocidade de esvaziamento da fila com a duração da cópia de segurança e a latência interativa, em vez de avaliar o sucesso apenas pela utilização do CPU.

Se os originais e as cópias de segurança partilharem discos HDD, menos leituras simultâneas de imagens ajudam frequentemente mais do que um limite de CPU superior. Se os originais estiverem num armazenamento rápido, mas a base de dados estiver ocupada, mova ou proteja a carga de trabalho da base de dados antes de aumentar o número de trabalhadores.

Mantenha as montagens de rede fiáveis durante ambas as operações. O guia de armazenamento de rede do Immich explica por que motivo um caminho montado mas bloqueado pode parecer um problema numa tarefa da aplicação.

-15% OFF

Valide um ciclo completo e reponha o serviço normal

Observe uma cópia de segurança completa seguida de uma janela de miniaturas. Registe as horas de início e conclusão, a latência máxima do armazenamento, a profundidade da fila, as tarefas falhadas e se os utilizadores conseguem abrir fotografias recentes durante o ciclo.

Depois de a acumulação ser processada, reponha a simultaneidade no valor normal documentado se a definição reduzida se destinava apenas a proteger a recuperação. A limitação permanente deve ser intencional e basear-se em objetivos de serviço medidos.

A alteração é bem-sucedida quando a duração da cópia de segurança se mantém previsível, as filas de miniaturas são esvaziadas dentro do período de recuperação planeado e não surgem tarefas falhadas nem recursos em falta. Reverta a última alteração de simultaneidade se a taxa de erros ou a latência da base de dados aumentar.

Suporte e Dicas

Mais para Ler

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.