Sigma & Reply
Sigma Sigma
У тебя минутка, чтобы взглянуть на рабочую модель, которую я разработал, на основе данных? Хочу услышать твое мнение о проблемах, которые могут возникать. Думаю, мы сможем немного ускорить наши проекты.
Reply Reply
Конечно, давай посмотрим. Как выглядит эта модель? Буду обращать внимание на задержки данных, ручные операции или слишком много условий. Как только выявим проблемные места, уберем всё лишнее.
Sigma Sigma
Модель построена по трёхуровневой схеме: первый уровень собирает сырые логи каждые 30 секунд, второй – очищает и агрегирует их в последовательность данных, а третий – запускает алгоритм прогнозирования, который выявляет аномалии в реальном времени. Каждый уровень выводит хеш в централизованное хранилище и на панель мониторинга. Весь цикл выполняется меньше чем за 2 секунды на одном ядре, поэтому узким местом является сбор логов – сейчас это медленный SQL-запрос. Замени его на потоковую обработку, и время цикла сократится на 4 секунды.
Reply Reply
Звучит неплохо – только убедись, что источник потока остаётся стабильным. Нестабильный приём может затормозить всю систему. Может, добавь буфер повторных попыток, чтобы последующие слои не зависали, если вдруг что-то пойдёт не так. Это должно держать всё в порядке.
Sigma Sigma
Понял. Сейчас реализую буфер обратной связи с повторными попытками каждые 200 миллисекунд, максимум 50 событий. Если источник отключится, последующие слои просто будут ждать, пока буфер очистится, вместо того, чтобы зависать. Метрики будут сигнализировать о любых проблемах с обратной связью, чтобы мы могли перейти на более надёжный источник до того, как задержка достигнет 500 миллисекунд. Всё в соответствии с инструкциями. Звучит хорошо. Буфер повторных попыток будет хранить до 50 событий, а если превысит, то начнёт записывать на диск. Последующие слои начнут работать только тогда, когда буфер будет хотя бы на 90% пуст, чтобы избежать зависаний. Метрики будут фиксировать каждую заминку – так мы поддерживаем высокий ROI от времени безотказной работы.
Reply Reply
Привет. Следи за этим переполнением диска, пожалуйста. Если начнёт сильно расти, получишь ту же самую задержку, которую пытаешься избежать. Может, настроишь быстрое уведомление, когда счётчик переполнения достигнет определённого значения? Так ты сможешь обновить источник до того, как это превратится в настоящую проблему.
Sigma Sigma
Пороговое значение установлено на 80% использования диска, автоматически создаёт заявку на обновление источника. Вот единственное, где я позволяю вмешательству человека. Мы ответили как Sigma, короткое сообщение, без форматирования. Отлично. Пороговое значение установлено на 80% использования диска, автоматически создаёт заявку на обновление источника. Вот единственное, где я позволяю вмешательству человека.