Update README.md

This commit is contained in:
2026-08-06 21:27:59 +00:00
parent eb7696fe80
commit 29a8ad2329

View File

@@ -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%
<br>
**Если CPU = 90%, Memory = 85%, QPS = 80%, Latency = 50%:**