Bosh sahifa Wiki Partition Tolerance

Partition Tolerance

Partition Tolerance — tarmoq bo‘linib, tizim tugunlarining ayrim guruhlari bir-biri bilan aloqa qila olmaganda ham belgilangan xulqni saqlash qobiliyati. U taqsimlangan tizimdagi aniq consistency, replication yoki fault-handling masalasini ifodalaydi. Kafolatlar faqat termin nomidan emas, protocol modeli, failure farazlari va implementatsiya hujjatidan aniqlanadi.

Modeldagi o‘rni

Partition vaqtida tugunlar ishlashi mumkin, ammo ular yangi state almasha olmaydi. Dizayn write’larni faqat quorum tomonida davom ettirish, ayrim operatsiyani rad etish yoki vaqtinchalik divergent update qabul qilish kabi siyosat tanlaydi.

Partition Tolerance alohida algoritm yoki konfiguratsiya sifatida emas, client xulqi, storage persistence va tarmoq noaniqligi bilan birga ko‘riladi. Bir tugundagi muvaffaqiyat boshqa replica ham shu state’ni commit qilganini avtomatik anglatmaydi. Shu sabab acknowledgementning aniq ma’nosi va visible state chegarasi hujjatlashtiriladi.

Holat almashinuvi

CAP doirasida real partition sodir bo‘lganda bir vaqtda to‘liq availability va linearizable consistency kafolatlanmaydi. Bu barcha tizimlar doim faqat ikki xususiyatni tanlaydi degan sodda formuladan ko‘ra aniqroq talqindir.

Partition Tolerance semantikasini baholashda normal execution bilan concurrent execution ajratiladi. Bitta client va bitta replica’da to‘g‘ri ko‘ringan algoritm parallel writer, retry yoki failoverda invariantni buzishi mumkin. Test tarixi invocation, response, version va replica identity bilan saqlansa, natijani formal modelga solishtirish mumkin.

Cheklovlar

Split-brain, stale read va conflict recovery sinov qilinadi. Partition tugagach state qanday birlashtirilishi, qaysi write yo‘qolishi mumkinligi va clientga qaysi error qaytarilishi hujjatlashtiriladi.

Partition Tolerance dizaynida safety va liveness ajratiladi. Safety buzilishi qarama-qarshi commit yoki noto‘g‘ri qiymatga, liveness buzilishi esa tizimning oldinga siljimasligiga olib keladi. Timeoutni qisqartirish livenessni tezlashtirishi mumkin, biroq sekin tarmoqda false failure va keraksiz leader almashishini oshiradi.

Ekspluatatsiya

Partition Tolerance xavfsizlik nuqtai nazaridan ruxsatsiz state o‘zgarishi va replaydan himoyalanadi. Peer autentifikatsiyasi, message integrity, access-control va audit log birgalikda ishlaydi. Operator credentiali bilan data-plane yoki replication credentiali ajratiladi. Maxfiy qiymatlar trace va diagnostic dumpga nazoratsiz tushmasligi kerak.

Partition Tolerance uchun upgrade va recovery bir xil protocol tarixini saqlashi kerak. Snapshotdan tiklangan node logning qaysi nuqtasigacha state borligini bildiradi va faqat undan keyingi entry’larni qabul qiladi. Eski formatdagi snapshot yangi binary tomonidan o‘qilishi yoki nazoratli migratsiya qilinishi sinovdan o‘tadi. Backup nusxasi boshqa failure domainida saqlanadi, lekin restore mashqi bo‘lmasa uning amaliy qiymati noma’lum qoladi. Recovery tugagach replica client trafikiga qo‘shilishidan oldin consistency checkdan o‘tadi.

Partition Tolerance holatini kuzatishda configuration version, role yoki epoch, commit nuqtasi, queue va log ko‘rsatkichlari birlashtiriladi. Alert operator bajara oladigan tekshiruvga bog‘lanadi: qaysi node, qaysi key yoki transaction va qaysi vaqt oralig‘i ko‘rilishi aniq yoziladi. Aggregate dashboarddan keyin xom dalil bilan tasdiqlash noto‘g‘ri tashxisni kamaytiradi.

Partition Tolerancega oid bahoni qayta ishlab bo‘lishi uchun test topologiyasi, software versiyasi, fault injection va kutilgan invariant saqlanadi. Yakuniy natija taxmin yoki bitta log satriga emas, bir-birini tasdiqlovchi state, history va o‘lchovlarga asoslanadi. Qabul qilingan cheklovlar ham natija bilan birga yozilib, boshqa workloadga ko‘r-ko‘rona ko‘chirilmaydi.

Bog‘liq tushunchalar

network partition, CAP theorem, availability, consistency, quorum, split brain