Latency vs Throughput
Kechikish va o'tkazish qobiliyati
Bitta yo'lakli tor ko'prikni tasavvur qiling: bitta mashina uni 10 soniyada o'tadi (bu — kechikish, latency), lekin ko'prik BIR VAQTNING o'zida faqat bitta mashinani o'tkaza oladi, shuning uchun soatiga atigi 360 ta mashina o'tadi (bu — o'tkazish qobiliyati, throughput). Endi ko'prikni KENGAYTIRIB, 10 ta yo'lak qilsangiz — har bir mashina hali ham 10 soniyada o'tadi (kechikish O'ZGARMAYDI), lekin endi soatiga 3600 ta mashina o'tadi (o'tkazish qobiliyati 10 BAROBAR oshadi).
Latency (kechikish) — bitta so'rovning boshidan oxirigacha qancha VAQT ketishi (masalan, 200 millisekund). Throughput (o'tkazish qobiliyati) — tizim BIR VAQT birligida nechta so'rovni qayta ishlashi mumkinligi (masalan, soniyasiga 5000 so'rov — bu QPS, Queries Per Second, deb ataladi). Bu ikkisi BOG'LIQ, lekin BIR XIL EMAS — va ularni aralashtirib yuborish tizim dizaynida keng tarqalgan xato.
Muhim tushuncha: throughput'ni oshirish har doim latency'ni yaxshilamaydi, va aksincha. Ko'prik misolida — yo'lak qo'shish (parallel ishlov berish, ko'proq server) throughput'ni oshiradi, lekin bitta mashinaning ko'prikdan o'tish VAQTINI qisqartirmaydi. Latency'ni qisqartirish uchun boshqa yondashuv kerak — masalan, ko'prikning o'zini QISQAROQ qilish (tezroq algoritm, kesh qo'shish — "Build an In-Memory Cache" kursida ko'rgan g'oya).
| Muammo | Odatiy yechim |
|---|---|
| Latency yuqori (har bir so'rov sekin) | Kesh qo'shish, ma'lumotni foydalanuvchiga yaqinlashtirish (CDN), algoritmni tezlashtirish |
| Throughput past (kam so'rovga ulguradi) | Ko'proq server (gorizontal miqyoslash), parallel ishlov berish, worker pool |
Real tizimlarda ko'pincha bittasini IKKINCHISI hisobiga yaxshilash mumkin: bitta so'rovni KO'P mayda vazifaga bo'lib, ularni parallel bajarish — throughput'ni oshiradi, lekin har bir mayda vazifani boshqarish (koordinatsiya) qo'shimcha vaqt talab qilib, o'sha BITTA so'rovning umumiy latency'sini biroz OSHIRISHI mumkin. Yaxshi tizim dizayni — qaysi metrika (latency yoki throughput) HAQIQATAN muhimligini avval aniqlab, shunga qarab optimallashtiradi.
Key Takeaway
Key Takeaway:
Latency — bitta so'rov qancha VAQT olishi; throughput — tizim bir vaqtda NECHTA so'rovga ulgurishi. Ular bog'liq, lekin bir xil emas — biri uchun qilingan yaxshilash ikkinchisini yomonlashtirishi mumkin, shuning uchun avval qaysi biri muhimroq ekanini aniqlash kerak.
NEXT UP
Numbers Every Engineer Should Know