В большой облачной инфраструктуре даже небольшое снижение производительности может вызвать огромные ресурсные отходы. Чтобы решить эту проблему, Meta разработала FBDetect, систему, которая может обнаружить чрезвычайно небольшие регрессии производительности. Сохраните много ресурсов сервера каждый год. В этой статье подробно рассказывается о принципе работы, техническом ядра и практическом применении FBDetect.
Даже небольшое падение производительности может привести к значительным отходам ресурсов при управлении крупной облачной инфраструктурой. Например, в такой компании, как Meta, снижение работы операции на 0,05% может показаться тривиальным, но с миллионами серверов, работающих одновременно, эта крошечная задержка может накапливаться в отходы тысяч серверов. Следовательно, для Мета - это огромная проблема, чтобы своевременно открыть и разрешить эти крошечные регрессии производительности.
Чтобы решить эту проблему, Meta AI запустила FBDetect, систему обнаружения регрессии производительности для производственных сред, которая может отражать минимальную регрессию производительности, даже всего лишь 0,005%. FBDetect способен контролировать примерно 800 000 временных рядов, охватывая несколько показателей, таких как пропускная способность, задержка, процессор и использование памяти, с участием сотни услуг и миллионов серверов. Принимая инновационные технологии, такие как выборка трассировки стека во всем кластере сервера, FBDetect может захватывать тонкие различия на уровне подпрограммы.
FBDetect фокусируется на анализе производительности уровня подпрограммы, который снижает сложность обнаружения от 0,05% регрессии уровня применения до более легко узнаваемого изменения уровня подпрограммы. Этот подход значительно снижает шум, делая изменения отслеживания более практичными.
Техническое ядро FBDetect включает в себя три основных аспекта. Во-первых, это уменьшает дисперсию данных о производительности благодаря обнаружению регрессии на уровне подпрограммы, так что небольшие регрессии также могут быть идентифицированы во времени. Во-вторых, система будет выполнять выборку трассировки стека во всем кластере сервера, точно измеряя производительность каждой подпрограммы, аналогично проведению анализа производительности в крупномасштабной среде. Наконец, для каждой обнаруженной регрессии FBDetect выполняет анализ первопричин, чтобы определить, вызвана ли регрессия временной проблемой, изменением стоимости или фактическим изменением кода.
После семи лет фактического тестирования производственной среды FBDETECT обладает сильными возможностями противоположных мер и может эффективно отфильтровать сигналы ложных регрессии. Внедрение этой системы не только значительно снижает количество событий, которые разработчики, необходимые для изучения, но также повышают эффективность мета -инфраструктуры. С обнаруженной небольшой регрессией FBDetect помогает Meta избегать отходов ресурсов на 4000 серверов в год.
На крупных предприятиях, таких как Meta с миллионами серверов, обнаружение регрессии эффективности особенно важно. Благодаря своим расширенным возможностям мониторинга, FBDetect не только улучшает скорость распознавания микро регрессий, но и предоставляет разработчикам эффективные методы анализа основной причины, что помогает своевременно решать проблемы и способствует эффективной работе всей инфраструктуры.
Вход бумаги: https://tangchq74.github.io/fbdetect-sosp24.pdf
Ключевые моменты:
FBDETECT может отслеживать крошечные регрессии производительности, даже на 0,005%, что значительно повышает точность обнаружения.
Система охватывает приблизительно 800 000 временных рядов, включает в себя несколько показателей производительности и способна выполнять точный анализ в крупномасштабных средах.
После семилетнего практического применения FBDetect помог Meta избежать отходов ресурсов около 4000 серверов в год, повышая общую эффективность инфраструктуры.
Короче говоря, FBDetect предоставляет крупномасштабную облачную инфраструктуру Meta с эффективными возможностями обнаружения и анализа производительности, эффективно сокращая отходы ресурсов, улучшая стабильность системы и эффективность работы. Применение этой системы в управлении ресурсами крупных предприятий предоставляет новые идеи для улучшения использования ресурсов и снижения эксплуатационных расходов.