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

un

khách
1 / ?
trở lại bài học

L = λ × W

Số phương trình hữu ích nhất trong việc lập kế hoạch dung lượng

Đối với bất kỳ hàng đợi ổn định nào, không quan trọng cấu trúc bên trong của nó: L = λ × W, trong đó:

- L = số trung bình các mục trong hệ thống (đang tiến hành hoặc chờ đợi)

- λ (lambda) = tốc độ trung bình của việc đến (mục mỗi đơn vị thời gian)

- W = thời gian trung bình mỗi mục ở trong hệ thống

Đọc hình học: vạch λ trên một trục và W trên trục khác. Sản phẩm L là diện tích của hình chữ nhật họ tạo ra. Lập kế hoạch dung lượng sống bên trong hình chữ nhật này.

Tại sao nó quan trọng: bất kỳ hai trong số ba số lượng nào cũng xác định số thứ ba. Đo lưu lượng và độ trễ, bạn biết độ chiếm dụng. Đo độ chiếm dụng và lưu lượng, bạn biết độ trễ. Luật này rất bền vững: nó áp dụng cho yêu cầu web, bàn ở nhà hàng, hàng đợi siêu thị và đường ống CPU mà không cần thay đổi.

Ba ví dụ cụ thể:

- Một dịch vụ web xử lý 200 req/s với độ trễ trung bình 50 ms (0.05 s). L = 200 × 0.05 = 10 đang tiến hành.

- Một quán cà phê phục vụ 60 khách/giờ với thời gian ở lại trung bình 15 phút (0.25 giờ). L = 60 × 0.25 = 15 khách trong nhà.

- Một nhóm backend xử lý 1500 req/s với độ trễ trung bình 200 ms (0.2 s). L = 1500 × 0.2 = 300 đang tiến hành.

Nhận xét về kích cỡ: số lượng công nhân / số lượng luồng / số lượng kết nối của một tầng phải ít nhất là L để giữ được. Đặt ít hơn có nghĩa là hàng đợi tăng lên.

Luật Little như diện tích: λ trên x, W trên y, L = diện tích

Tầng API của bạn xử lý 1,200 req/s với độ trễ trung bình 80 ms. Áp dụng Luật Little để tính L. Sau đó giải thích điều gì thay đổi (a) nếu lưu lượng tăng gấp đôi lên 2,400 req/s với độ trễ không đổi, & (b) nếu lưu lượng giữ nguyên ở 1,200 nhưng độ trễ tăng lên 160 ms. Scenario nào sản xuất ra L lớn hơn và điều đó có nghĩa gì về mặt hoạt động?

Tại sao Độ Trễ Nổ Ra Past 80% Sử Dụng

Số Đường Cực Đáng Biết Trong Hoạt Động

Đồ thị sử dụng trên trục hoành (0% đến 100%) & thời gian chờ trung bình trên trục tung. Hình dạng là một trong những đường cong quan trọng nhất trong việc lập kế hoạch dung lượng.

Mô hình hàng đợi M/M/1: cho một hệ thống có sự đến ngẫu nhiên (Poisson) & thời gian phục vụ ngẫu nhiên (exponential), thời gian chờ trung bình:

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

với ρ là sử dụng (0 đến 1) & μ là tỷ lệ phục vụ.

Hình dạng đường cong:

- Tại ρ = 0.5 (50% sử dụng), thời gian chờ là nhỏ (1 thời gian phục vụ).

- Tại ρ = 0.7 (70% sử dụng), thời gian chờ là ~2.3 thời gian phục vụ.

- Tại ρ = 0.8 (80% sử dụng), thời gian chờ là ~4 thời gian phục vụ.

- Tại ρ = 0.9 (90% sử dụng), thời gian chờ là ~9 thời gian phục vụ.

- Tại ρ = 0.95 (95% sử dụng), thời gian chờ là ~19 thời gian phục vụ.

- Tại ρ = 1.0 (100% sử dụng), thời gian chờ là vô hạn.

Gối đầu: quanh 80% sử dụng, đường cong cong lại mạnh mẽ. Dưới gối đầu, dung lượng thoải mái; trên gối đầu, latency tăng nhanh hơn sử dụng.

Đọc thực tế: mục tiêu 70% sử dụng cho trạng thái ổn định, không bao giờ 100%. 30% 'không gian' không lãng phí; nó là giá của latency có giới hạn.

Đường cong hàng đợi với gối đầu ở 80% sử dụng

Cỡ Hóa Lại Qua Gối Đầu

Hai kịch bản:

Kịch bản A: 10 bản sao đang chạy với 60% CPU. Latency p99 = 100 ms.

Kịch bản B: cùng đội ngũ đang chạy với 90% CPU do tăng trưởng lưu lượng. p99 = 600 ms.

Cùng đội ngũ, cùng mã, chỉ có sử dụng thay đổi.

Vui lòng giải thích tại sao latency của kịch bản B là 6x tồi tệ hơn mặc dù chỉ có một sự tăng 1.5x về sử dụng, sử dụng hình dạng đường cong của hàng đợi. Sau đó, đề xuất: sử dụng nào nên đội ngũ bổ sung dung lượng và tại sao ngưỡng đó thay vì chờ vi phạm SLO thực tế?

Kích Thước & Bắt Động Cùng Lúc

Tổng hợp

Bạn có thể áp dụng Luật Little như một hình chữ nhật, đọc đường cong chờ và gối đầu của nó, và kết nối cả hai với quyết định về khả năng.

Áp dụng cả hai.

Một tầng backend xử lý 2,000 req/s với độ trễ trung bình 50 ms mỗi replica có khả năng 80 req/s tại 70% CPU. Tỷ lệ nở 2x; bạn muốn sống sót qua 3 sự cố replica đồng thời.

Tính: (1) L sử dụng Luật Little ở baseline; (2) số lượng bản sao sử dụng công thức bài học (peak × surge / per-replica) + headroom; (3) tại mức sử dụng nào trên toàn đội nên kích hoạt tự động tăng dung lượng và lý do ngưỡng sử dụng đó sử dụng đường cong hàng đợi.

Ghi chú Đồng hành

Ghi chú Đồng hành

Lesson Geometry-of này tái cấu trúc bài học Stateless Horizontal Scaling thành hình học số.

Bài đồng hành tiếp theo, geometry_of_ingress_egress_separation, tái cấu trúc sự phân chia ranh giới mạng như một đồ thị song song với một đỉnh cắt mà sự phân chia loại bỏ.

Làm tốt.