Em grande infraestrutura em nuvem, mesmo uma pequena degradação de desempenho pode causar enormes resíduos de recursos. Para resolver esse problema, o Meta desenvolveu o FBDETECT, um sistema que pode detectar regressões de desempenho extremamente pequenas. Economize muitos recursos do servidor todos os anos. Este artigo introduzirá em detalhes o princípio de trabalho, o núcleo técnico e os efeitos práticos da aplicação do FBDETECT.
Mesmo uma pequena queda de desempenho pode levar a um desperdício de recursos significativo no gerenciamento de uma grande infraestrutura em nuvem. Por exemplo, em uma empresa como a Meta, uma redução de 0,05% na velocidade de operação de um aplicativo pode parecer trivial, mas com milhões de servidores em execução ao mesmo tempo, esse pequeno atraso pode se acumular no desperdício de milhares de servidores. Portanto, é um enorme desafio para a Meta descobrir e resolver essas minúsculas regressões de desempenho em tempo hábil.
Para resolver esse problema, a Meta AI lançou o FBDETECT, um sistema de detecção de regressão de desempenho para ambientes de produção que podem capturar regressão mínima de desempenho, mesmo tão baixa quanto 0,005%. O FBDETECT é capaz de monitorar aproximadamente 800.000 séries temporais, cobrindo várias métricas, como taxa de transferência, latência, CPU e uso de memória, envolvendo centenas de serviços e milhões de servidores. Ao adotar tecnologias inovadoras, como a amostragem de rastreamento de pilhas em todo o cluster do servidor, o FBDETECT é capaz de capturar diferenças sutis de desempenho no nível da sub-rotina.
O FBDETECT se concentra na análise de desempenho do nível da sub -rotina, o que reduz a dificuldade de detecção da regressão de 0,05% no nível de aplicação a uma mudança de nível de sub -rotina mais facilmente reconhecível. Essa abordagem reduz significativamente o ruído, tornando as mudanças de rastreamento mais práticas.
O núcleo técnico do FBDetect inclui três aspectos principais. Primeiro, reduz a variação dos dados de desempenho por meio da detecção de regressão no nível da sub-rotina, para que pequenas regressões também possam ser identificadas no tempo. Em segundo lugar, o sistema executará amostragem de rastreamento de pilhas em todo o cluster do servidor, medindo com precisão o desempenho de cada sub-rotina, semelhante ao desempenho da análise de desempenho em um ambiente em larga escala. Finalmente, para cada regressão detectada, o FBDETECT realiza uma análise de causa raiz para determinar se a regressão é causada por um problema temporário, uma alteração de custo ou uma alteração real de código.
Após sete anos de teste real de ambiente de produção, o FBDetect possui fortes recursos anti-interferência e pode efetivamente filtrar sinais de regressão falsos. A introdução deste sistema não apenas reduz significativamente o número de eventos que os desenvolvedores precisam investigar, mas também melhora a eficiência da meta -infraestrutura. Com a pequena regressão detectada, o FBDETECT ajuda a meta evitar o desperdício de recursos em cerca de 4.000 servidores a cada ano.
Em grandes empresas como a Meta com milhões de servidores, a detecção de regressão de desempenho é particularmente importante. Com seus recursos avançados de monitoramento, o FBDetect não apenas melhora a taxa de reconhecimento de micro regressões, mas também fornece aos desenvolvedores métodos de análise de causa raiz eficazes, o que ajuda a resolver problemas em potencial em tempo hábil e promove a operação eficiente de toda a infraestrutura.
Entrada de papel: https://tangchq74.github.io/fbdetect-sosp24.pdf
Pontos -chave:
O FBDETECT pode monitorar pequenas regressões de desempenho, mesmo que 0,005%, melhorando bastante a precisão da detecção.
O sistema abrange aproximadamente 800.000 séries temporais, envolve várias métricas de desempenho e é capaz de executar uma análise precisa em ambientes em larga escala.
Após sete anos de aplicação prática, o FBDETECT ajudou a meta -evitar o desperdício de recursos de cerca de 4.000 servidores por ano, melhorando a eficiência geral da infraestrutura.
Em resumo, o FBDETECT fornece a infraestrutura de nuvem em larga escala da Meta com os recursos eficientes de regressão de desempenho e de análise, reduzindo efetivamente o desperdício de recursos, melhorando a estabilidade do sistema e a eficiência operacional. A aplicação deste sistema em gerenciamento de recursos de grandes empresas fornece novas idéias para melhorar a utilização de recursos e reduzir os custos operacionais.