GoDasturchi
The CAP Theorem in Plain Language

The CAP Theorem in Plain Language

CAP teoremasi oddiy tilda

Ikki shahardagi bitta kitob do'konining ikkita FILIALINI tasavvur qiling — ikkalasida ham "qolgan nusxalar soni" yozilgan bitta xuddi shunday reestr bor. Bir kuni ikki filial orasidagi telefon aloqasi UZILADI. Endi har bir filial mustaqil ishlashda davom etadimi (mijozga xizmat ko'rsatib, o'z reestrini yangilaydi), yoki aloqa tiklanmaguncha SOTUVNI TO'XTATIB qo'yadimi (chunki ikkinchi filial reestrini bilmaydi)? Aynan shu tanlov — CAP teoremasining mohiyati.

CAP teoremasi — tarqatilgan (distributed) tizim BIR VAQTNING o'zida quyidagi UCHTA xususiyatning FAQAT IKKITASINI to'liq ta'minlay olishini aytadi: Consistency (izchillik — har bir o'qish so'rovi ENG SO'NGGI yozilgan ma'lumotni qaytaradi), Availability (mavjudlik — har bir so'rov, xato bermasdan, JAVOB oladi), Partition Tolerance (bo'linishga chidamlilik — tizim, qismlar orasidagi tarmoq aloqasi UZILGANDA HAM, ishlashda davom etadi).

Amalda, tarmoq aloqasi UZILISHI (partition) — ERTAMI-KECHMI sodir bo'ladigan voqea, shuning uchun Partition Tolerance'dan voz kechib bo'lmaydi — real tarqatilgan tizim buni HAR DOIM tanlashga MAJBUR. Demak, haqiqiy tanlov faqat Consistency va Availability ORASIDA qoladi: aloqa uzilgan paytda, filial (server) — "eski, ehtimol noto'g'ri ma'lumot bilan bo'lsa ham javob beraman" (Availability) yoki "aniq bilmaguncha javob bermayman" (Consistency) deydi.

TanlovNima bo'ladiQachon mos
CP (Consistency + Partition Tolerance)Aloqa uzilganda, noaniq javob berishdan ko'ra XATO qaytaradiBank hisobi qoldig'i, chipta band qilish — noto'g'ri ma'lumot berishdan ko'ra kutish afzal
AP (Availability + Partition Tolerance)Aloqa uzilganda ham, biroz ESKIROQ ma'lumot bilan bo'lsa ham javob beradiIjtimoiy tarmoqdagi "like" soni, mahsulot sharhlari — biroz eski ko'rinish katta muammo emas

Muhim tushunish kerak bo'lgan narsa: bu tanlov "har doim" emas, faqat aloqa UZILGAN paytda amal qiladi — oddiy, muammosiz ishlayotgan paytda tizim ham Consistency, ham Availability'ni birga ta'minlay oladi. CAP teoremasi faqat "eng yomon holatda (tarmoq uzilganda) nima QURBON qilinadi" haqida — va bu tanlov, keyingi darsda ko'radigan consistency modellari orqali amalga oshiriladi.

Key Takeaway

Key Takeaway:

Tarqatilgan tizim, tarmoq aloqasi uzilgan paytda, Consistency (har doim eng aniq ma'lumot) va Availability (har doim javob berish) orasida BIRINI tanlashga majbur bo'ladi — ikkalasini birga to'liq ta'minlab bo'lmaydi. Qaysi birini tanlash — ma'lumotning noto'g'ri bo'lishi qanchalik xavfli ekaniga bog'liq.

NEXT UP

Consistency Models: Strong vs Eventual

The CAP Theorem in Plain Language

CAP teoremasi oddiy tilda

Ikki shahardagi bitta kitob do'konining ikkita FILIALINI tasavvur qiling — ikkalasida ham "qolgan nusxalar soni" yozilgan bitta xuddi shunday reestr bor. Bir kuni ikki filial orasidagi telefon aloqasi UZILADI. Endi har bir filial mustaqil ishlashda davom etadimi (mijozga xizmat ko'rsatib, o'z reestrini yangilaydi), yoki aloqa tiklanmaguncha SOTUVNI TO'XTATIB qo'yadimi (chunki ikkinchi filial reestrini bilmaydi)? Aynan shu tanlov — CAP teoremasining mohiyati.

CAP teoremasi — tarqatilgan (distributed) tizim BIR VAQTNING o'zida quyidagi UCHTA xususiyatning FAQAT IKKITASINI to'liq ta'minlay olishini aytadi: Consistency (izchillik — har bir o'qish so'rovi ENG SO'NGGI yozilgan ma'lumotni qaytaradi), Availability (mavjudlik — har bir so'rov, xato bermasdan, JAVOB oladi), Partition Tolerance (bo'linishga chidamlilik — tizim, qismlar orasidagi tarmoq aloqasi UZILGANDA HAM, ishlashda davom etadi).

Amalda, tarmoq aloqasi UZILISHI (partition) — ERTAMI-KECHMI sodir bo'ladigan voqea, shuning uchun Partition Tolerance'dan voz kechib bo'lmaydi — real tarqatilgan tizim buni HAR DOIM tanlashga MAJBUR. Demak, haqiqiy tanlov faqat Consistency va Availability ORASIDA qoladi: aloqa uzilgan paytda, filial (server) — "eski, ehtimol noto'g'ri ma'lumot bilan bo'lsa ham javob beraman" (Availability) yoki "aniq bilmaguncha javob bermayman" (Consistency) deydi.

TanlovNima bo'ladiQachon mos
CP (Consistency + Partition Tolerance)Aloqa uzilganda, noaniq javob berishdan ko'ra XATO qaytaradiBank hisobi qoldig'i, chipta band qilish — noto'g'ri ma'lumot berishdan ko'ra kutish afzal
AP (Availability + Partition Tolerance)Aloqa uzilganda ham, biroz ESKIROQ ma'lumot bilan bo'lsa ham javob beradiIjtimoiy tarmoqdagi "like" soni, mahsulot sharhlari — biroz eski ko'rinish katta muammo emas

Muhim tushunish kerak bo'lgan narsa: bu tanlov "har doim" emas, faqat aloqa UZILGAN paytda amal qiladi — oddiy, muammosiz ishlayotgan paytda tizim ham Consistency, ham Availability'ni birga ta'minlay oladi. CAP teoremasi faqat "eng yomon holatda (tarmoq uzilganda) nima QURBON qilinadi" haqida — va bu tanlov, keyingi darsda ko'radigan consistency modellari orqali amalga oshiriladi.

Key Takeaway

Key Takeaway:

Tarqatilgan tizim, tarmoq aloqasi uzilgan paytda, Consistency (har doim eng aniq ma'lumot) va Availability (har doim javob berish) orasida BIRINI tanlashga majbur bo'ladi — ikkalasini birga to'liq ta'minlab bo'lmaydi. Qaysi birini tanlash — ma'lumotning noto'g'ri bo'lishi qanchalik xavfli ekaniga bog'liq.

NEXT UP

Consistency Models: Strong vs Eventual