Learning Journey

Teori Antrian

Matematika di balik menunggu: kenapa antrean muncul walau kapasitas cukup, kedatangan Poisson, Hukum Little, kurva M/M/1, mahalnya variabilitas, Erlang C dan pooling, bottleneck di sistem software, sampai retry storm saat server kelebihan beban.

Isi materi

Istilah penting

Antrian
Pekerjaan atau orang yang menunggu karena server sedang sibuk melayani yang lain.
Server
Apa pun yang melayani: teller, kasir, agen call center, thread, atau instance aplikasi.
Laju Kedatangan (λ)
Rata-rata banyak kedatangan per satuan waktu.
Laju Layanan (μ)
Rata-rata banyak pelanggan yang bisa dilayani satu server per satuan waktu.
Utilisasi (ρ)
Bagian waktu server sedang sibuk, ρ = λ/(cμ).
Notasi Kendall
Penulisan A/B/c untuk pola kedatangan, pola layanan, dan banyak server.
Proses Poisson
Pola kedatangan acak yang saling bebas dengan laju rata-rata tetap.
Distribusi Eksponensial
Distribusi jeda antar kedatangan pada proses Poisson, dengan rata-rata 1/λ.
Memoryless
Sifat eksponensial: waktu yang sudah ditunggu tidak mengubah peluang kejadian berikutnya.
Hukum Little
Rata-rata isi sistem sama dengan laju kedatangan kali rata-rata lama tinggal, L = λW.
M/M/1
Antrian dengan kedatangan Poisson, layanan eksponensial, dan satu server.
M/M/c
Seperti M/M/1, tetapi c server berbagi satu antrean.
Erlang
Satuan beban, λ dikali rata-rata waktu layanan; 1 Erlang menyibukkan satu server penuh.
Erlang C
Rumus peluang pelanggan harus menunggu di sistem M/M/c.
Koefisien Variasi (c)
Simpangan baku dibagi rata-rata; 0 berarti selalu sama, 1 setara eksponensial.
Rumus Kingman
Pendekatan waktu tunggu yang memisahkan pengaruh utilisasi, variabilitas, dan waktu layanan.
Service Level
Persen pelanggan yang dilayani dalam batas waktu tertentu, misalnya 80% dalam 20 detik.
Bottleneck
Tahap dengan utilisasi tertinggi yang membatasi throughput seluruh sistem.
Throughput
Banyak pekerjaan yang selesai per satuan waktu.
Goodput
Bagian throughput yang benar-benar berguna, misalnya selesai sebelum klien timeout.
Backpressure
Sinyal dari komponen yang penuh supaya pengirim memperlambat kirimannya.
Load Shedding
Sengaja menolak sebagian permintaan saat penuh supaya sisanya tetap terlayani cepat.
Retry Storm
Klien yang timeout mengirim ulang permintaan sehingga beban makin berat saat sistem sudah kewalahan.
Tail Latency
Latensi di persentil tinggi seperti p95 atau p99, yaitu pengalaman pengguna yang paling lambat.