Update README.md

This commit is contained in:
2026-08-06 20:53:11 +00:00
parent e9a311e636
commit 505de1bd3c

View File

@@ -1170,6 +1170,34 @@ node_load = Σ (metric_value / metric_threshold) * metric_weight
───────────────────────────────────────────────── ─────────────────────────────────────────────────
Σ metric_weights Σ metric_weights
``` ```
Где,
* **metric_value** — текущее значение метрики на узле.
Примеры: загрузка 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 — вес метрики (коэффициент важности).
Позволяет учитывать, что разные ресурсы имеют разную критичность. Например, RAM можно сделать важнее, чем CPU, если приложение чувствительно к памяти. Веса могут быть любыми положительными числами; их не обязательно нормировать заранее — формула сама нормализует через знаменатель.
* Σ (metric_value / metric_threshold) * metric_weight — взвешенная сумма нормированных нагрузок.
Для каждой метрики считаем «насколько мы превысили порог» (или насколько близки к нему), умножаем на важность этой метрики, затем складываем. Это даёт суммарную «оценку напряжённости» узла с учётом приоритетов.
* Σ metric_weights — сумма всех весов.
Нужна для нормализации: чтобы итоговая нагрузка была сопоставима между разными конфигурациями весов и имела понятный масштаб.
* node_load — итоговая нормированная нагрузка на узел.
Интерпретация:
* node_load ≈ 1.0 — узел близок к порогам по совокупности метрик.
* node_load > 1.0 — в среднем узел перегружен.
* node_load < 1.0 — есть запас по ресурсам.
* Это не «процент загрузки», а агрегированный индекс, который удобно использовать для балансировки и автоскейлинга.
* metic_weight - вес метрики (коэфициент важности)
**Пример с весами по умолчанию:** **Пример с весами по умолчанию:**
* CPU: 40% веса, порог 75% * CPU: 40% веса, порог 75%
@@ -1177,7 +1205,7 @@ node_load = Σ (metric_value / metric_threshold) * metric_weight
* QPS: 20% веса, порог 70% * QPS: 20% веса, порог 70%
* Latency: 10% веса, порог 65% * Latency: 10% веса, порог 65%
Если CPU = 90%, Memory = 85%, QPS = 80%, Latency = 50%: **Если CPU = 90%, Memory = 85%, QPS = 80%, Latency = 50%:**
```sh ```sh
CPU_score = (0.90 / 0.75) = 1.20 CPU_score = (0.90 / 0.75) = 1.20