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

un

tamu
1 / ?
kembali ke pelajaran

L = λ × W

Persamaan Paling Berguna dalam Perencanaan Kapasitas

Untuk setiap antrean yang stabil, terlepas dari struktur internalnya: L = λ × W, di mana:

- L = jumlah rata-rata item dalam sistem (sedang diproses atau menunggu)

- λ (lambda) = tingkat kedatangan rata-rata (item per satuan waktu)

- W = waktu rata-rata yang dihabiskan setiap item di dalam sistem

Pembacaan geometris: plot λ pada satu sumbu & W pada sumbu lainnya. Hasil kali L adalah luas persegi panjang yang mereka bentuk. Perencanaan kapasitas berada di dalam persegi panjang ini.

Mengapa ini penting: dua dari tiga besaran tersebut menentukan yang ketiga. Ukur throughput & latensi, Anda mengetahui okupansi. Ukur okupansi & throughput, Anda mengetahui latensi. Hukum ini robust: berlaku untuk permintaan web, meja restoran, antrean supermarket, & pipeline CPU tanpa modifikasi.

Tiga contoh konkret:

- Layanan web menangani 200 req/s dengan latensi rata-rata 50 ms (0,05 s). L = 200 × 0,05 = 10 sedang diproses.

- Kedai kopi melayani 60 pelanggan/jam dengan waktu tinggal rata-rata 15 menit (0,25 jam). L = 60 × 0,25 = 15 pelanggan di dalam.

- Pool backend menangani 1500 req/s dengan latensi rata-rata 200 ms (0,2 s). L = 1500 × 0,2 = 300 sedang diproses.

Implikasi penentuan ukuran: jumlah worker / jumlah thread / jumlah koneksi dari suatu tier harus setidaknya L untuk dapat mengimbangi. Jika kurang dari itu, antrean akan bertambah.

Little's Law as area: λ on x, W on y, L = area

Tier API Anda menangani 1.200 req/s dengan latensi rata-rata 80 ms. Terapkan Hukum Little untuk menghitung L. Kemudian jelaskan apa yang berubah (a) jika lalu lintas menjadi dua kali lipat menjadi 2.400 req/s dengan latensi tetap, & (b) jika lalu lintas tetap di 1.200 tetapi latensi naik menjadi 160 ms. Skenario mana yang menghasilkan L yang lebih besar, & apa artinya secara operasional?

Mengapa Latensi Melonjak Melewati Utilisasi 80%

Kurva Paling Penting dalam Operasional

Gambarkan utilisasi pada sumbu-x (0% hingga 100%) & waktu tunggu rata-rata pada sumbu-y. Bentuknya merupakan salah satu kurva paling berpengaruh dalam perencanaan kapasitas.

Model antrean M/M/1: untuk sistem dengan kedatangan Poisson (acak) & waktu layanan eksponensial (acak), waktu tunggu rata-rata:

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

di mana ρ adalah utilisasi (0 hingga 1) & μ adalah laju layanan.

Bentuk kurva:

- Pada ρ = 0,5 (utilisasi 50%), waktu tunggu kecil (1 waktu layanan).

- Pada ρ = 0,7 (utilisasi 70%), waktu tunggu adalah ~2,3 waktu layanan.

- Pada ρ = 0,8 (utilisasi 80%), waktu tunggu adalah ~4 waktu layanan.

- Pada ρ = 0,9 (utilisasi 90%), waktu tunggu adalah ~9 waktu layanan.

- Pada ρ = 0,95 (utilisasi 95%), waktu tunggu adalah ~19 waktu layanan.

- Pada ρ = 1,0 (utilisasi 100%), waktu tunggu adalah tak hingga.

Siku: sekitar 80% utilisasi, kurva membengkok tajam. Di bawah siku, kapasitas terasa nyaman; di atasnya, latensi naik lebih cepat daripada utilisasi.

Pembacaan praktis: targetkan 70% utilisasi untuk keadaan stabil, jangan pernah 100%. 'Ruang kosong' 30% itu bukan pemborosan; itu adalah harga yang harus dibayar untuk latensi yang terbatas.

Kurva antrean dengan siku pada utilisasi 80%

Penyesuaian Ukuran Melampaui Titik Lutut (Knee)

Dua skenario:

Skenario A: 10 replika berjalan pada CPU 60%. Latensi p99 = 100 ms.

Skenario B: armada yang sama berjalan pada CPU 90% akibat pertumbuhan lalu lintas. p99 = 600 ms.

Armada yang sama, kode yang sama, hanya utilisasi yang berubah.

Jelaskan mengapa latensi pada skenario B menjadi 6 kali lebih buruk meskipun hanya terjadi peningkatan utilisasi sebesar 1,5 kali, dengan menggunakan bentuk geometris kurva antrean. Kemudian usulkan: pada tingkat utilisasi berapa tim harus menambah kapasitas, dan mengapa ambang batas tersebut dipilih alih-alih menunggu hingga terjadi pelanggaran SLO yang sebenarnya?

Ukuran & Pemicu Bersama

Sintesis

Anda sekarang dapat menerapkan Hukum Little sebagai persegi panjang, membaca kurva antrean & titik lututnya, & menghubungkan keduanya dengan keputusan kapasitas.

Terapkan keduanya.

Lapisan backend menangani 2.000 req/s dengan latensi rata-rata 50 ms per replika, kapasitas 80 req/s pada CPU 70%. Faktor lonjakan 2x; Anda ingin bertahan dari 3 kegagalan replika bersamaan.

Hitung: (1) L menggunakan Hukum Little pada kondisi dasar; (2) jumlah replika menggunakan rumus pelajaran (puncak × lonjakan / per-replika) + cadangan; (3) pada tingkat utilisasi teramati berapa di seluruh armada seharusnya autoscaling dipicu, & justifikasi ambang batas tersebut menggunakan kurva antrean.

Catatan Pendamping

Catatan Pendamping

Pelajaran geometri ini membingkai ulang pelajaran utama Stateless Horizontal Scaling sebagai geometri kuantitatif.

Pendamping berikutnya, geometry_of_ingress_egress_separation, membingkai ulang pemisahan batas jaringan sebagai graf bipartit dengan simpang potong yang dihilangkan oleh pemisahan tersebut.

Bagus.