English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

гость
1 / ?
назад к урокам

L = λ × W

Самый Удобный Уравнение в Планировании Капацитета

Для любого стабильного очереди, независимо от ее внутренней структуры: L = λ × W, где:

- L = среднее количество элементов в системе (в процессе или в ожидании)

- λ (lambda) = средняя скорость прибытия (элементов в единицу времени)

- W = среднее время пребывания каждого элемента в системе

Геометрическое прочтение: нарисуйте λ по одной оси и W по другой. Продукт L - это площадь прямоугольника, который они образуют. Планирование мощности живет внутри этого прямоугольника.

Почему это важно: любые два из трех количеств определяют третье. Измерьте черезпуск и задержку, и вы знаете загрузку. Измерьте загрузку и черезпуск, и вы знаете задержку. Закон устойчив: он применяется к веб-запросам, столовым в ресторане, очередям в супермаркете и CPU-пайплайнам без изменений.

Три конкретных примера:

- Веб-услуга обрабатывает 200 req/s с средней задержкой 50 ms (0.05 с). L = 200 × 0.05 = 10 в процессе.

- Кофейня обслуживает 60 клиентов/час с средней продолжительностью пребывания 15 минут (0,25 ч). L = 60 × 0,25 = 15 клиентов внутри.

- Пул задач обрабатывает 1500 req/s с средней задержкой 200 ms (0,2 с). L = 1500 × 0,2 = 300 в процессе.

Следствие размерности: количество рабочих, количество потоков, количество подключений слоя должно быть не менее L, чтобы поддерживать скорость. Любое меньшее значение означает рост очереди.

Закон Литла как площадь: λ по оси X, W по оси Y, L = площадь

Ваш слой API обрабатывает 1,200 req/s с средней задержкой 80 ms. Примените закон Литла для вычисления L. Затем объясните, что меняется (а) при удвоении трафика до 2,400 req/s с неизменной задержкой, и (b) при сохранении трафика на уровне 1,200, но с увеличением задержки до 160 ms. Которая из сценариев дает более крупное L, и что это означает операционно?

Почему Задержка Растет За 80% Утилизации

Самая Важная Кривая в Операциях

График использования ресурсов на оси X (0% - 100%) & среднее время ожидания на оси Y. Форма является одной из самых важных кривых в планировании мощностей.

Модель очереди M/M/1: для системы с случайными пришедшими (Poisson) & случайными временами обслуживания (exponential), среднее время ожидания:

W_q = ρ / (μ × (1 - ρ))

где ρ - использование (0 до 1) & μ - скорость обслуживания.

Форма кривой:

- При ρ = 0.5 (50% использов.), время ожидания небольшое (1 время обслуживания).

- При ρ = 0.7 (70% использов.), время ожидания ~2.3 времени обслуживания.

- При ρ = 0.8 (80% использов.), время ожидания ~4 времени обслуживания.

- При ρ = 0.9 (90% использов.), время ожидания ~9 времени обслуживания.

- При ρ = 0.95 (95% использов.), время ожидания ~19 времени обслуживания.

- При ρ = 1.0 (100% использов.), время ожидания бесконечно.

Нога: около 80% использования, кривая резко изгибается. ниже колена, мощность комфортна; выше, задержка растет быстрее, чем растет использование.

Практическое чтение: цели 70% использования для стабильного состояния, никогда не 100%. 30% "пустого места" не является потерьными; это стоимость ограниченной задержки.

Кривая очереди с коленом на 80% использования

Размерирование через колено

Два сценария:

Сценарий A: 10 реплик, работающих на 60% CPU. Latency p99 = 100 ms.

Сценарий B: та же флотилия, работающая на 90% CPU из-за роста трафика. p99 = 600 ms.

Та же флотилия, та же кодировка, только использование изменилось.

Объясните, почему задержка в сценарии B в 6 раз хуже, хотя увеличение использования составило только 1.5x, используя геометрическую форму кривой очереди. Затем предложите: на какой процент использования команда должна добавить мощность и почему этот порог вместо ожидания реального нарушения СЛО?

Размерирование и Триггер вместе

Синтез

Теперь вы можете применить закон Литтла в виде прямоугольника, прочитать кривую очереди и ее сустав, и связать оба с решениями по мощности.

Примените оба.

Бэкенд слой обрабатывает 2000 запросов в секунду с средней задержкой 50 миллисекунд на реплику, мощность реплики 80 запросов в секунду при 70% использования CPU. Фактор всплеска 2x; вы хотите пережить 3 одновременных сбоев реплики.

Вычислите: (1) L с помощью закона Литтла на базовом уровне; (2) количество реплик с помощью формулы из урока (пик × всплеск / на-реплику) + запас; (3) на какой процент использования по всему флоту следует активировать масштабирование и обосновать порог с помощью кривой очереди.

Дополнительные заметки

Дополнительные заметки

Эта геометрия-урок преобразует основной урок Stateless Horizontal Scaling в количественную геометрию.

Следующая дополненная, geometry_of_ingress_egress_separation, преобразует разделение сетевой границы в двудольное графическое представление с вершиной разрыва, которую удаляет разделение.

Хорошая работа.