From 29a8ad2329ba04e6fcdd5580d7b269c93cbe2e98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=93=D1=80=D0=B8=D0=B3=D0=BE=D1=80=D0=B8=D0=B9=20=D0=A1?= =?UTF-8?q?=D0=B0=D1=84=D1=80=D0=BE=D0=BD=D0=BE=D0=B2?= Date: Thu, 6 Aug 2026 21:27:59 +0000 Subject: [PATCH] Update README.md --- README.md | 33 ++++++++++++++------------------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index b03156d..ac0407c 100644 --- a/README.md +++ b/README.md @@ -1168,37 +1168,32 @@ node_load = Σ (metric_value / metric_threshold) * metric_weight Где, * **metric_value** — текущее значение метрики на узле. -Примеры: загрузка CPU в процентах, потребление RAM в ГБ, число запросов в секунду (RPS), дисковый I/O в MB/s. Это «сырые» данные мониторинга. +Примеры: загрузка CPU в процентах, потребление RAM в ГБ, число запросов в секунду (RPS), дисковый I/O в MB/s. Это "сырые" данные мониторинга. * **metric_threshold** — пороговое (нормативное) значение для этой метрики. -Это уровень, который считается «пределом нормы». Например: 80 % для CPU, 90 % для RAM, лимит RPS, при котором начинаются деградации. Отношение metric_value / metric_threshold даёт безразмерный коэффициент загрузки: 1.0 — на пороге, >1.0 — перегруз, <1.0 — запас. - -* metric_weight — вес метрики (коэффициент важности). +Это уровень, который считается "пределом нормы". Например: 80 % для CPU, 90 % для RAM, лимит RPS, при котором начинаются деградации. Отношение metric_value / metric_threshold даёт безразмерный коэффициент загрузки: 1.0 — на пороге, больше 1.0 — перегруз, меньше 1.0 — запас. +* **metric_weight** — вес метрики (коэффициент важности). Позволяет учитывать, что разные ресурсы имеют разную критичность. Например, RAM можно сделать важнее, чем CPU, если приложение чувствительно к памяти. Веса могут быть любыми положительными числами; их не обязательно нормировать заранее — формула сама нормализует через знаменатель. -* Σ (metric_value / metric_threshold) * metric_weight — взвешенная сумма нормированных нагрузок. -Для каждой метрики считаем «насколько мы превысили порог» (или насколько близки к нему), умножаем на важность этой метрики, затем складываем. Это даёт суммарную «оценку напряжённости» узла с учётом приоритетов. +* **Σ (metric_value / metric_threshold) * metric_weight** — взвешенная сумма нормированных нагрузок. +Для каждой метрики считаем "насколько мы превысили порог" (или насколько близки к нему), умножаем на важность этой метрики, затем складываем. Это даёт суммарную "оценку напряжённости" узла с учётом приоритетов. -* Σ metric_weights — сумма всех весов. +* **Σ metric_weights** — сумма всех весов. Нужна для нормализации: чтобы итоговая нагрузка была сопоставима между разными конфигурациями весов и имела понятный масштаб. -* node_load — итоговая нормированная нагрузка на узел. +* **node_load** — итоговая нормированная нагрузка на узел. Интерпретация: - * node_load ≈ 1.0 — узел близок к порогам по совокупности метрик. - * node_load > 1.0 — в среднем узел перегружен. - * node_load < 1.0 — есть запас по ресурсам. - * Это не «процент загрузки», а агрегированный индекс, который удобно использовать для балансировки и автоскейлинга. +* **node_load ≈ 1.0** — узел близок к порогам по совокупности метрик. +* **node_load > 1.0** — в среднем узел перегружен. +* **node_load < 1.0** — есть запас по ресурсам. - * metic_weight - вес метрики (коэфициент важности) +> [!TIP] +> **Примечание** +> Это не "процент загрузки", а агрегированный индекс, который удобно использовать для балансировки и автоскейлинга. -**Пример с весами по умолчанию:** - - * CPU: 40% веса, порог 75% - * Memory: 30% веса, порог 80% - * QPS: 20% веса, порог 70% - * Latency: 10% веса, порог 65% +
**Если CPU = 90%, Memory = 85%, QPS = 80%, Latency = 50%:**