dbit.one© 2026
000
booting_
Loading experience0%
dbit.one
Ruknlar

Injiniring

To‘xtatib bo‘lmaydigan tizimlar qanday qurilgani haqida. To‘lov yadrolari, jonli bazalarni ko‘chirish, regulyator talablari, yuklama ostidagi unumdorlik. O‘zimiz qabul qilgan qarorlar haqida yozamiz — xato narxi va nimani boshqacha qilishimiz bilan birga.

8 · Barcha maqolalar
Injiniring9 daqiqa o‘qish

Testlar xatoning yoʻqligini isbotlamaydi. Nima isbotlaydi

Qisqasi: testlar toʻplami — bu qidiruv. U «topdim» deya oladi va «yoʻq» deya olmaydi. Kodning koʻp qismi uchun bu yetarli, ammo toʻlov protokoli, buyurtmaning holat mashinasi va ikki vazifa umumiy holatga tegadigan har qanday joy uchun yetarli emas: u yerda xato — qadamlarning kamdan-kam uchraydigan birikmasi. Model tekshiruvi barcha erishiladigan holatlarni aylanib chiqadi va testlar umuman javob bera olmaydigan savolga javob beradi.

Injiniring9 daqiqa o‘qish

Izolyatsiya darajalari: bazangiz aslida nimaga yoʻl qoʻyadi

Qisqasi: izolyatsiya darajasi — unumdorlik sozlamasi emas, ilovangiz koʻrishi mumkin boʻlgan natijalar roʻyxati. «read committed» bilan «serializable» oʻrtasida nomi va narxi bor anomaliyalar turadi: qoldiqdan ortiq yechib olish, navbatchisiz qolgan smena, ikki marta raqamlangan hujjat. Hujjatlarda «baza snapshot isolation ni qoʻllaydi» deb oʻqish yetarli emas — bu matnning emas, bajarilishlarning xossasi.

Injiniring9 daqiqa o‘qish

Master qulaydi: maʼlumotlaringiz bilan aslida nima boʻladi

Qisqasi: «bizda uch tugunli klaster bor» — bu tizimning xossasi emas, konfiguratsiya tavsifi. Xossa kimdir tekshirgandan keyin paydo boʻladi: tarmoq boʻlinganda ikki tugun bir vaqtda oʻzini bosh deb hisoblamasligini va mijozga tasdiqlangan yozuv qulagan lider bilan birga yoʻqolmasligini. Buni serverni qoʻlda oʻchirib emas, simulyatsiya bilan tekshiriladi.

Injiniring7 daqiqa o‘qish

Test uch yuz yurishda bir marta yiqiladi. Bu ob-havo emas

Qisqasi: uch yuz yurishda bir marta yiqiladigan test haqiqiy poygani allaqachon topgan — siz uni takrorlay olmayapsiz, xolos. Tasodifiy narsa xato emas, operatsion tizim tanlagan bajarilish tartibi. Bu tanlovni undan tortib oling — va yiqilish latifadan manzilga aylanadi.

Injiniring6 daqiqa o‘qish

Takroriy so‘rov puldan ikki marta yechmasligi kerak

Qisqacha: tarmoq to‘lov o‘tgan-o‘tmaganini aytmaydi — u shunchaki jim qoladi. Mijoz tugmani ikkinchi marta bosadi, mobil ilova so‘rovni o‘zi takrorlaydi, va himoyasiz siz ikki marta yechasiz. Idempotentlik jadvallar va kod darajasida qanday ishlashini hamda uni odatda qayerda buzishlarini ko‘rib chiqamiz.

Injiniring6 daqiqa o‘qish

Hech kim ko‘rmagan qoplama tufayli LCP 6,4 soniya

Qisqacha: o‘z saytimizning tahlili. Birinchi ekran matni serverdan 10 millisekundda kelardi, ekranda esa olti yarim soniyadan keyin paydo bo‘lardi — uni faqat yuklangan JavaScript olib tashlay oladigan intro-qoplama yopib turardi. Tuzatishdan keyin LCP 6,4 → 2,2 s, unumdorlik bahosi 73 → 98. Quyida qanday izlaganimiz, noto‘g‘ri chiqqan farazni ham qo‘shib.

Injiniring5 daqiqa o‘qish

Bazani yuklama ostida ko‘chirish va yozuvlarni yo‘qotmaslik

Qisqacha: «yakshanba kechasi ko‘chiramiz» — bu reja emas, garov. Ishlaydigan usul boshqacha: bir muddat tizim ikkala omborga bir vaqtda yozadi, tarix fonda ko‘chiriladi, ma’lumot solishtiriladi va faqat shundan keyin o‘qish yangisiga o‘tadi. Oxirgi qadamgacha har doim ortga qaytish mumkin.

Ruknlar