Como a cache quente altera os pedidos repetidos do Plex

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 cache quente altera os pedidos repetidos do Plex, porque os dados que foram dispendiosos de obter uma vez podem já estar disponíveis numa memória mais rápida ou numa cache local.

Esse segundo pedido mais rápido é um comportamento útil em produção, mas pode induzir em erro nos testes de capacidade. Um cartaz, objeto de metadados, página do sistema de ficheiros ou ficheiro lido recentemente pode ser devolvido rapidamente sem percorrer o mesmo caminho de armazenamento que o primeiro pedido. Uma comparação útil identifica o estado da cache, o tamanho do conjunto de trabalho e a pressão sobre a memória, para que a velocidade repetida não seja confundida com capacidade ilimitada do servidor.

O primeiro pedido pode obter dados de um armazenamento mais lento

Um primeiro acesso pode exigir que o sistema operativo ou a aplicação leia dados de um SSD, HDD ou sistema de ficheiros montado através da rede. Esse percurso inclui a latência do dispositivo, operações do sistema de ficheiros e, possivelmente, a pesquisa de metadados antes de os bytes solicitados poderem ser enviados para o Plex ou para o cliente.

O Linux utiliza normalmente a memória não ocupada para colocar dados de ficheiros em cache, pelo que a primeira leitura pode preencher a cache de páginas. As leituras seguintes podem evitar alguma E/S física, desde que as páginas necessárias permaneçam residentes e a aplicação não contorne deliberadamente a cache.

Para um teste justo, registe qual é realmente o primeiro pedido depois de os dados não terem sido acedidos recentemente. Não presuma que reiniciar o servidor é a única forma de criar um estado mais frio e não force a expulsão da cache num sistema de produção apenas para obter um benchmark sintético.

Os pedidos repetidos podem utilizar a RAM ou caches da aplicação

Depois de os mesmos dados serem solicitados, várias camadas podem responder mais rapidamente. O sistema operativo pode manter páginas de ficheiros, um cliente pode conservar localmente imagens ou dados da interface e uma aplicação pode reutilizar objetos gerados ou transformados em vez de os reconstruir a cada pedido.

As leituras repetidas são um dos exemplos mais claros de como as páginas em cache ocultam a latência do armazenamento. Isso não torna a medição inválida; significa que o resultado descreve um conjunto de trabalho quente, e não o desempenho do dispositivo subjacente sem cache.

Também pode surgir um comportamento específico da cache do Plex relacionado com imagens geradas. Um pedido repetido de uma imagem pode reutilizar um ficheiro de cache anterior, um exemplo concreto de por que razão o trabalho repetido da interface pode seguir um percurso diferente do primeiro pedido.

A cache quente ajuda mais os metadados do que todas as leituras de conteúdos multimédia

Navegar numa biblioteca acede a muitos objetos pequenos de metadados e imagens, pelo que manter os dados reutilizados com frequência próximos da memória pode alterar visivelmente a resposta da interface. Em contrapartida, uma transmissão sequencial longa de um filme pode ler dados que são acedidos uma vez e depois substituídos pelas partes seguintes do ficheiro.

As bibliotecas Plex de grandes dimensões podem criar caches de metadados consideráveis no cliente, porque as imagens e as informações da biblioteca são consultadas repetidamente. As caches de metadados podem crescer, mesmo quando os ficheiros de vídeo permanecem no servidor.

A distinção é importante ao interpretar a afirmação “o Plex parece mais rápido”. Uma grelha de cartazes em cache não prova que o armazenamento consegue suportar mais transmissões simultâneas e um segmento de ficheiro em cache não prova que o filme inteiro cabe na memória. Identifique o tipo de pedido antes de transformar uma resposta quente numa afirmação sobre capacidade.

-15% OFF

A expulsão da cache pode alterar novamente o desempenho

O estado quente é temporário. À medida que as aplicações precisam de memória, o sistema operativo pode recuperar páginas em cache e as caches dos clientes podem expulsar objetos mais antigos para dar lugar a novos. Por isso, um pedido que foi rápido há uma hora pode voltar ao percurso mais lento sem qualquer falha de hardware.

A cache de páginas foi concebida para utilizar a memória disponível e cedê-la quando outro trabalho precisa de espaço. Uma explicação prática sobre a recuperação da cache sob pressão de memória ajuda a explicar por que razão o mesmo pedido repetido pode mudar à medida que o conjunto de trabalho do servidor e os serviços simultâneos se alteram.

Teste esta situação repetindo o mesmo pedido após um intervalo de inatividade e novamente enquanto estão ativos trabalhos que consomem muita memória. Se a latência aumentar apenas quando o conjunto de trabalho útil é expulso, o resultado aponta para a permanência na cache e para a pressão sobre a memória, e não para um disco subitamente mais lento.

Separe a velocidade da cache quente da capacidade sustentável

Os testes de capacidade devem incluir, pelo menos, um acesso inicial ou mais frio, um acesso repetido e quente e uma carga sustentada superior ao tamanho útil da cache. O objetivo não é eliminar a cache, mas compreender qual camada produziu cada resultado e se os recursos subjacentes ainda têm margem quando a reutilização deixa de ajudar.

Um resultado quente é válido quando a carga de produção reutiliza efetivamente os mesmos dados. Torna-se enganador quando um benchmark curto é generalizado para uma biblioteca muito maior, mais clientes ou um conjunto de trabalho que já não cabe na memória. Trate o estado da cache como parte das condições do teste, tal como o cliente, a taxa de bits e a simultaneidade.

Quando a decisão diz especificamente respeito a leituras repetidas de um NAS, compare a cache de leitura SSD com a leitura direta do disco. No caso do Plex, a conclusão duradoura é mais simples: os dados quentes alteram a latência, mas apenas um teste sustentado e de maior dimensão mostra o que o servidor consegue manter depois de a cache deixar de cobrir o percurso subjacente.

Centro de Tecnologia e IA

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.