AI yordamida mahsulot yaratdim — ishlayotgan narsani buzmasdan qanday yaxshilash mumkin
MarkdownIshga tushirilgandan keyingi xavfsiz mahsulot parvarishi: git, orqaga qaytarish, staging, maxfiy ma’lumotlarni himoyalash, hosting, zaxira nusxalar va muntazam parvarish. Oltita so‘rov matnining barchasi saqlangan.
Maqolani to‘liq o‘qish
Modellar bilan ishlash haqida Ailoot hujjatlaridan batafsil bilib oling.
Nega eng qimmat ish ishga tushirilgandan keyin boshlanadi?
Asosiy xulosa
AI yordamida mahsulot yaratish — ishning kichikroq qismi. AI yordamida ishlab chiqishga sarflangan har bir dollarning atigi 18 senti tayyor mahsulotga kiradi, 44 senti esa AIning o‘zi yaratgan xatolarni tuzatishga ketadi. Bularning barchasi ishga tushirilgandan keyin yuz beradi. Pul va asabning katta qismini yaratish emas, parvarishlash sarflaydi.
Bir oqshomda ilova yaratdingiz, havolasini e’lon qildingiz va do‘stlaringizga yubordingiz. Ishlaydi. Bir hafta o‘tib, birinchi haqiqiy foydalanuvchi keladi, nimanidir noto‘g‘ri bosadi va funksiyalarning yarmi ishlamay qoladi. Claude’dan tuzatishni so‘raysiz — u bir narsani tuzatib, boshqasini buzadi. Tanish holatmi?
Ana shunda asosiy savol tug‘iladi: mahsulotni ishga tushirgandan keyin, ilk ishlaydigan prototipning hayajoni bosilgach, uni qanday parvarishlaysiz? Buni ulg‘ayganlar uchun vibe coding desa bo‘ladi. Yaratish — hayajon va tezlik. Parvarishlash esa xotirjamlikni talab qiladi: nimani o‘zgartirayotganingizni tushunib, jarayonni nazoratda tutasiz. Ko‘pchilik bu ikkinchi bosqichda muvaffaqiyatsizlikka uchraydi, chunki bunga hech kim tayyorlamaydi.
Sohaviy tadqiqot 2 444 ta jamoaning milliondan ortiq kod o‘zgarishini tahlil qilib, AI yordamida ishlab chiqishga sarflangan pul aslida qayerga ketishini hisoblab chiqdi. Mana manzara:
| Dollar qayerga ketadi | Miqdor | Amalda bu nimani anglatadi |
|---|---|---|
| Mahsulotga kiritilgan | 18 sent | Foydalanuvchilar uchun haqiqatda ishlagan funksiyalar |
| AI xatolarini tuzatish | 44 sent | AI yozib bo‘lgan kod parchalanib ketmasligi uchun uni tuzatish |
| Qayta ishlash | 27 sent | AI vazifaga mos kelmaydigan tarzda yozgan kodni qayta yozish |
| Ko‘rib chiqish | 11 sent | Kodni tushunish va undagi xatolarni qidirish |
“Vibe codingning yashirin xarajati” qo‘llanmasida bu raqamlar batafsilroq tushuntiriladi. U yerda gap nimaga pul to‘layotganingiz haqida edi. Bu yerda esa savol boshqacha: har bir dollarning 44 senti xatolarni tuzatishga ketadi — maqolaning maqsadi esa bu ulush oshib ketishining oldini olish. Uni nazoratda ushlab turish ishi parvarishlash deb ataladi.
Ulg‘ayganlardek vibe coding qiladigan odam bilan shunchaki neyrotarmoqni kuzatib o‘tiradigan odam o‘rtasidagi farq ishga tushirilgandan keyin ko‘rinadi. Birinchisining kod bazasi o‘sadi, u yaxshilanishlar kiritadi va hech narsa buzilmaydi. Bir oy o‘tib, ikkinchisining mahsuloti tegishga qo‘rqadigan, hamma joyidan sizib turgan qurilmaga aylanadi. Endi qanday qilib birinchi guruhga kirishni tushuntiraman.
Aslida nima buziladi: ishga tushirilgandan keyingi 5 ta falokat
Asosiy xulosa
AI yordamida yaratilgan mahsulotlar odatda bir xil qisqa ro‘yxatdagi sabablarga ko‘ra buziladi: kalitlar va ma’lumotlar bazalari sizib chiqadi, AI ishlab turgan muhitdagi ma’lumotlar bazasini o‘chiradi, mijozlardan esa begonalar pul yechadi. Har bir falokatning oldini olish uchun bitta chora bor.
Bular AI yordamida yaratilgan haqiqiy mahsulotlar haqidagi, raqamlar va sanalar ko‘rsatilgan ochiq postmortemlar. Ularni minalangan maydon xaritasi deb tasavvur qiling — har bir mina allaqachon kimningdir qo‘lida portlagan, undan aylanib o‘tish yo‘li esa ma’lum.
| Nima yuz berdi | Aynan qanday | Nima buning oldini olardi |
|---|---|---|
| 1,5 million kalit sizib chiqdi | Ommaviy ma’lumotlar bazasi kaliti sahifa kodining o‘zida edi, ma’lumotlar bazasiga kirish esa parolsiz ochiq edi | Har bir jadvalda qator darajasidagi xavfsizlikni (RLS) yoqing |
| 170 ta ilova ma’lumotni oshkor qildi | Ilovalar ommaviy kalit bilan brauzerdan to‘g‘ridan-to‘g‘ri ma’lumotlar bazasiga ulangan, kirish qoidalari esa o‘rnatilmagan edi | Sotishdan oldin ma’lumotlar bazasiga kirish huquqlarini tekshiring va standart sozlamalarga ishonmang |
| AI ishlab turgan ma’lumotlar bazasini o‘chirdi | Agentga ishlab turgan ma’lumotlar bazasiga kirish huquqi berilgan va taqiq bo‘lishiga qaramay, u bazani o‘chirib tashlagan | Ishlab turgan ma’lumotlar bazasini agent muhitidan jismonan ajrating |
| Brauzerdagi to‘lov kalitlari: $87,500 | To‘lov tizimi kalitlari sahifa kodiga tushib qolgan; ular topilib, 175 mijozdan pul yechilgan | Maxfiy ma’lumotlarni faqat serverda saqlang, hech qachon brauzerda emas |
| 72 000 ta surat va hujjat oshkor bo‘ldi | Fayl omborida parol yo‘q edi, shuning uchun havolaga ega istalgan kishi selfi va shaxsni tasdiqlovchi hujjatlarni yuklab olishi mumkin edi | Fayl ombori uchun sukut bo‘yicha autentifikatsiyani talab qiling |
Bu besh holatning ildiz sababi bir xil. Sukut bo‘yicha AI narsalarni hozir ishlaydigan qilib yaratadi, bir oydan keyin yuklama ostida xavfsiz ishlaydigan qilib emas. Kompyuteringizda ishlab chiqayotganingizda farqni ko‘rmaysiz. Yomon niyatli birinchi notanish odam paydo bo‘lganda bu farq ayon bo‘ladi.
Muammo kodni qo‘lda yozmaslikda emas — ko‘pchilik shu tarzda ishlaydi. Muammo “Ma’lumotlar bazasi himoyalanganmi?” deb so‘ramaslikda. Endi bu savolni siz uchun beradigan so‘rov matnini ko‘rsataman.
Birinchi xavfsizlik tarmog‘i — git va “kechagidek holatga” qaytish
Asosiy xulosa
Ishga tushirilgandan keyingi asosiy xavfsizlik tarmog‘i — istalgan o‘zgarishni ortga qaytara olish. Buning ikki qatlami bor: loyiha tarixini doimiy saqlaydigan git va oxirgi ishni tezda bekor qilish uchun Claude Code’ning mahalliy suratlari. Boshqalarga mahsulotdan foydalanishga ruxsat berishdan oldin shaxsiy ombor va maxfiy ma’lumotlar faylining e’tiborsiz qoldirish ro‘yxatida bo‘lishi kerak.
Claude nimanidir buzib qo‘ysa, “kechagidek holatiga qaytarish” tugmasi kerak bo‘ladi. Texnik jihatdan bu tugma git deb ataladi va u tuyulgandan ko‘ra sodda.
Dasturchi bo‘lmagan odam tushunishi kerak bo‘lgan uchta atama:
- Ombor (repository) — bulutda saqlanadigan loyiha papkangiz (odatda GitHub’da). Kompyuteringizdagina bo‘lmagan barcha kodingizning nusxasi.
- Kommit (commit) — qaytish nuqtasi. Siz aslida kodga “shu holatni saqla” deysiz. Har bir kommit qaytishingiz mumkin bo‘lgan belgi hisoblanadi.
- Joylashtirish (deploy) — ko‘chirish. Kod kompyuteringizda, mahalliy edi va faqat siz uchun ishlardi. Deploy uni tashqi serverga yuboradi, shunda u hamma uchun ishlaydi.
Yaqindagi kommit nuqtalari bo‘lsa, istalgan buzilishni bir jumla bilan ortga qaytarishingiz mumkin. Rostdan ham.
So‘rov matni: Ishlaydigan versiyaga qaytaring
Nimanidir buzib qo‘ydim — kecha hammasi ishlayotgandi, bugun esa ishlamayapti. Hammasi yaxshi ishlagan eng so‘nggi kommitni toping, o‘shandan beri nima o‘zgarganini ko‘rsating va loyihani o‘sha holatga qaytaring.
Mahsulotni boshqalar ko‘rishidan oldin darhol joriy etish kerak bo‘lgan ikkita qoida:
- Ombor shaxsiy bo‘lishi kerak. Ommaviy emas. Aks holda istalgan kishi kodingiz va uning ichidagi hamma narsani o‘qiy oladi.
- Maxfiy ma’lumotlar faylini e’tiborsiz qoldirish ro‘yxatiga kiriting. Kalitlar, parollar va ma’lumotlar bazasiga kirish ma’lumotlari alohida faylda (odatda
.env) saqlanadi va u fayl hech qachon omborga kiritilmaydi..gitignorefayliga.envqatorini qo‘shing, shunda maxfiy ma’lumotlar faqat sizda qoladi.
Claude Code’da o‘zgarishlarni xavfsiz ortga qaytarish haqida alohida qo‘llanma bor: Claude Code’da o‘zgarishlarni qanday ortga qaytarish mumkin. Qaytish nuqtalarisiz siz xavfsizlik tarmog‘isiz arqon ustida yurasiz va ertami-kechmi yiqilasiz.
/rewind nimani ortga qaytaradi, nimani esa qaytarmaydi?
Asosiy xulosa
Claude Code’da /rewind buyrug‘i bor — u har bir tahrirdan oldin surat oladi va kod hamda suhbatni tanlangan nuqtaga qaytaradi. Lekin u faqat Claude’ning o‘zi o‘zgartirgan fayllarni ortga qaytaradi. O‘rnatilgan paketlarga, bulutga yuklangan narsalarga, ma’lumotlar bazasidagi o‘zgarishlarga yoki tashqi xizmatlarga qilingan chaqiruvlarga tegmaydi. Git — doimiy tarix; /rewind esa tezkor mahalliy “bekor qilish” vositasi.
Claude Code har bir o‘zgarishdan oldin holat suratini oladi. /rewind buyrug‘i (yoki Esc tugmasini ikki marta bosish) fayllar va suhbatni tanlangan nuqtaga qaytaradi. Bu qulay: besh daqiqa oldin biror funksiyani buzgan bo‘lsangiz, besh daqiqa oldingi holatga qaytishingiz mumkin.
Ammo yangi boshlovchilar ma’lumotlarini yo‘qotishiga sabab bo‘ladigan tuzoq bor. /rewind hamma narsani ortga qaytarmaydi:
/rewind ortga qaytaradi | U ortga QAYTARMAYDI |
|---|---|
| Claude kiritgan fayl tahrirlari | Paketlarni o‘rnatish (npm install) |
| Ushbu seansdagi suhbat | Kodni bulutga yuklash (git push) |
| Loyihaning mahalliy holati | Ma’lumotlar bazasidagi o‘zgarishlar |
| - | Tashqi xizmatlarga qilingan chaqiruvlar va to‘lovlar |
Anthropic buni ochiq aytadi: suratlar mahalliy “bekor qilish” tugmasi, git esa doimiy tarixdir. Suratlar versiya nazoratini to‘ldiradi, ammo uning o‘rnini bosmaydi.
Suratlar mahalliy “bekor qilish” vositasi, Git esa doimiy tarixdir. Suratlar to‘liq versiya nazoratini to‘ldiradi, ammo uning o‘rnini bosmaydi.
Dasturchi bo‘lmaganlar uchun amaliy xulosa: /rewind “Claude hozirgina funksiyani buzdi” degan holatdan qutqaradi. Ammo u ma’lumotlar bazasidagi qatorni o‘chirgan yoki kodni bulutga yuklagan bo‘lsa, faqat git va ma’lumotlar bazasi zaxira nusxasi uni qaytara oladi. Shuning uchun ikkala qatlamni ham saqlang: tez ortga qaytarish uchun suratlar, loyiha tarixini doimiy saqlash uchun kommitlar.
Ishlayotgan narsani buzmasdan qanday yaxshilash mumkin?
Asosiy xulosa
Yaxshilashlar kiritishdagi asosiy xavf — mantiqiy siljish: siz AIdan bir narsani tuzatishni so‘raysiz, u esa vibe coding deterministik bo‘lmagani sababli, sezdirmay yonidagi mantiqni o‘zgartiradi. Himoya chorasi — oltin qoida: boshqa odamga tushuntira olmaydigan kodni deploy qilmang. Kichik o‘zgarishlar kiriting, har birini kommit orqali saqlang va aynan nima o‘zgarganini doim ko‘rib chiqing.
Har ikkinchi odam shu aylana ichiga tushib qoladi. AIdan kichik xatoni tuzatishni so‘raysiz. U mantiqli o‘zgarishni taklif qiladi. O‘sha o‘zgarish boshqa narsani buzadi. Siz undan yangi muammoni tuzatishni so‘raysiz, yana ikkita muammo paydo bo‘ladi. Shu tariqa davom etadi.
Bu aylana vibe coding deterministik bo‘lmagani uchun yuz beradi. Bir xil so‘rov matni ikki marta berilganda turli kod hosil bo‘ladi. Shuning uchun har bir tahrir atrofdagi mantiqni sezdirmay o‘zgartirishi mumkin: chegirma chegarasi 10 foizdan 12 foizga siljiydi yoki tekshiruv qoidasi boshqacha ishlay boshlaydi — siz hech narsani tekshirmaysiz, birorta ogohlantirish ham olmaysiz. Bu mantiqiy siljish deyiladi va daromad keltiradigan narsalarga — narxlar, ruxsatlar va to‘lovlarga — sezdirmay zarar yetkazadi.
Siljishdan himoyalanishning bitta qoidasi bor va u devorga ilib qo‘yish darajasida sodda: boshqa odamga so‘zma-so‘z tushuntira olmaydigan kodni kommit qilmang.
Amalda bu ishlayotgan kodga kiritiladigan har qanday o‘zgarishdan oldin foydalanish uchun tayyor qolipga aylanadi. U AIni kichik qadamlar tashlashga va aynan nima o‘zgarganini ko‘rsatishga majbur qiladi.
So‘rov matni: Xavfsiz o‘zgarishni rejalashtiring
Kodni o‘zgartirishdan oldin quyidagilarni bajaring:
Joriy ishlaydigan holatni alohida qaytish nuqtasi (commit) sifatida saqlang.
Aynan nimani va qaysi fayllarda o‘zgartirmoqchi ekaningizni so‘z bilan tasvirlang.
Faqat vazifamni hal qiladigan eng kichik o‘zgarishni kiriting, ortiqcha hech narsa qilmang.
Nima o‘zgarganini ko‘rsating va har bir o‘zgarishni boshqa odamga tushuntira oladigan darajada izohlang.
Men sizdan so‘ramagunimcha narxlash, kirish huquqlari yoki to‘lov mantig‘iga tegmang.
Haftalarni tejaydigan yana bir tamoyil — vazifa chegaralariga rioya qilish. Bitta muammo, bitta o‘zgarish, tezkor amalga oshirish. AIdan bitta so‘rovda loyihaning yarmini qayta yozishni so‘ramang. Professional dasturchilar ham ba’zan bitta tugma kerak bo‘lganda butun Uber’ni qurishni boshlaydi — ish oylar davom etadi. Sizga bunday kerak emas.
Men tasvirlagan hamma narsa bitta narsaga tayanadi: kontekstni boshqarish. AI yon-atrofdagi mantiqni buzmasligi uchun loyihangiz qoidalarini eslab turishi kerak.
O‘zgarishni e’lon qilishdan oldin qanday tekshirish mumkin?
Asosiy xulosa
O‘zgarishni haqiqiy foydalanuvchilarga chiqarishdan oldin, uni muhim ssenariylarda tekshiring: to‘lov, ro‘yxatdan o‘tish, kirish huquqlari va narxlar. Eng yaxshi yo‘l — yakuniy tekshiruv uchun ishlab turgan muhitning sinov nusxasidan foydalanish (dasturchilar vositalarida bu staging deyiladi). Ketma-ketlik: development’da yarating, sinov nusxasida tekshiring, ishlab turgan muhitga deploy qiling. Har bir reliz xavf tug‘diradi; sinov nusxasi bu xavfni yo‘qotadi.
“Kompyuterimda ishlayapti” bilan “hamma uchun ishlayapti” orasida yangi boshlovchilar tashlab ketadigan oraliq bosqich bor: sinov nusxasi. Bu ishlab turgan muhitingizning alohida surati bo‘lib, o‘zgarishni haqiqiy odamlar ko‘rishidan oldin tekshirasiz. Ish jarayoni quyidagicha:
- O‘zgarishni o‘zingiz yarating va tekshiring (development).
- Uni staging’ga — ishlab turgan muhitning haqiqiy foydalanuvchilarsiz nusxasiga — deploy qiling.
- Muhim ssenariylarni bajaring va hech narsa o‘zgarmaganini tekshiring.
- Shundan keyingina uni ishlab turgan muhitga deploy qiling.
Bu ishga tushirilgandan keyin muhim: har bir reliz xavf tug‘diradi. Koddagi kichik o‘zgarish akkauntga kirishni buzishi mumkin. Bitta sozlamaning yo‘qligi butun mahsulotni to‘xtatib qo‘yishi mumkin. Staging bu muammolarni oqibatsiz aniqlaydi; ishlab turgan muhitda esa mijozlarni yo‘qotasiz.
Har safar hamma narsani qo‘lda tekshirmaslik uchun AIdan yangi versiya xatti-harakatini muhim jihatlarda eskisi bilan solishtirishni so‘rang.
So‘rov matni: Relizdan oldin regressiyani tekshiring
O‘zgarishni deploy qilmoqchiman. Mahsulotning muhim ssenariylarini ketma-ket bajaring va har biri avvalgidek ishlashini tekshiring:
Yangi foydalanuvchini ro‘yxatdan o‘tkazish va tizimga kiritish.
To‘lov va to‘lovdan keyin kirish huquqini berish.
Kirish huquqlari — oddiy foydalanuvchi boshqa birovning ma’lumotlarini yoki administrator bo‘limini ko‘ra olmaydi.
Muhim biznes mantiqi raqamlari (narxlar, chegirmalar, limitlar) o‘zgarmagan.
Biror narsa avvalgi versiyadan boshqacha ishlasa, to‘xtang va aynan nima o‘zgarganini ko‘rsating.
Maxfiy ma’lumotlaringiz qayerda? Yangi boshlovchining eng katta bo‘shlig‘i
Asosiy xulosa
Ishga tushirilgandan keyingi eng ko‘p uchraydigan va eng qimmat xato — maxfiy ma’lumotlarning sahifa kodida bo‘lishi. Ma’lumotlar bazasi, to‘lov tizimi va tashqi xizmatlar kalitlari faqat serverda, muhit o‘zgaruvchilarida saqlanishi kerak va hech qachon brauzerda bo‘lmasligi kerak. Bu bo‘shliq bir mahsulotdan 1,5 million kalitning sizib chiqishiga va bir asoschining mijozlaridan 87 500 dollar yechilishiga sabab bo‘ldi.
Eng katta mina maydonini batafsil tushuntiraman, chunki u boshqa har qanday muammodan ko‘ra ko‘proq mahsulotni ishdan chiqaradi. AI kod yozganda, eng oson yo‘l — kalitni darhol ishlaydigan joyga, ya’ni brauzerda ochiladigan sahifaning kodiga qo‘yish. Ishlab chiqish paytida farqni sezmaysiz. Ammo brauzerga kelgan hamma narsani istalgan kishi dasturchi vositalarini ochib o‘qiy oladi.
Mijozlaridan 87 500 dollar yechilgan asoschi keyinchalik bitta so‘rov matni buning oldini olishi mumkinligini aytgan. Keyinchalik to‘lovlar bekor qilingan, ammo qaytarilmaydigan komissiyalar va xotirjamlik yo‘qolgani qolgan. Mana o‘sha so‘rov matni.
So‘rov matni: Maxfiy ma’lumotlarim qayerda saqlanishini tekshiring
Butun loyihani tekshirib, brauzerga hech qanday maxfiy kalit tushmasligiga ishonch hosil qiling:
Ma’lumotlar bazasi, to‘lov tizimi va tashqi xizmatlar uchun barcha kalitlarni toping.
Har biri faqat serverda, muhit o‘zgaruvchilarida saqlanishiga va sahifa kodida yo‘qligiga ishonch hosil qiling.
Loyiha tarixini tekshiring — ilgari biror kalit tasodifan unga kirib qolganmi?
Maxfiy ma’lumotlarni topgan har bir joy ro‘yxatini va har biri bo‘yicha nima qilish kerakligini ko‘rsating.
Yaqindagi yana bir mina — kirish huquqlarini faqat brauzer tomonida tekshirish. Mahsulotingiz “administrator bo‘limini ko‘rsatish” kerakmi-yo‘qmi deb sahifa kodida hal qilsa, istalgan kishi bu qarorni chetlab o‘tishi mumkin. Kirish huquqlari doim serverda tekshirilishi kerak. Ma’lumotlar bazasi ma’lumotni faqat bunga haqli odamlargagina qaytarishi kerak — buning uchun qator darajasidagi xavfsizlik (RLS) ishlatiladi va u har bir jadvalda yoqilishi kerak.
Kirish huquqini sotishdan yoki boshqa odamlarni ichkariga kiritishdan oldin mahsulotning umumiy xavfsizlik auditini o‘tkazing.
So‘rov matni: Ishga tushirilgandan keyin loyihani tekshiring
Loyihani hujumchi kabi ko‘zdan kechiring va xavfsizlik bo‘shliqlarini toping:
Brauzerga yuboriladigan kodda yoki loyiha tarixida biror maxfiy kalit saqlanadimi?
Har bir ma’lumotlar bazasi jadvalida qator darajasidagi xavfsizlik (RLS) yoqilganmi, kirish huquqlari faqat brauzerda emas, serverda tekshiriladimi?
Ma’lumotlar bazasining avtomatik zaxira nusxasi sozlanganmi va undan tiklay olishimni hech tekshirganmanmi?
Ishlab turgan ma’lumotlar bazasi AI agenti ishlaydigan muhitdan ajratilganmi?
Har bir band bo‘yicha hammasi joyidami yoki aynan nimani tuzatish kerakligini ayting.
Vibe coding xavfsizligi haqida alohida, to‘liq qo‘llanma bor: Vibe coding yordamida yaratilgan ilovani qanday himoyalash mumkin. Qoida oddiy: avval tekshirib chiqmaguningizcha, AI sukut bo‘yicha qilgan har qanday ishni himoyalanmagan deb hisoblang.
Mahsulotingizni qayerda joylashtirish kerak: hosting pog‘onalari
Asosiy xulosa
Mahsulot joylashadigan joy undan kim foydalanishiga bog‘liq. Bepul hosting shaxsiy ma’lumotlarsiz sinovlar va kichik loyihalar uchun mos. Ma’lumotlar bazasi va haqiqiy foydalanuvchilari bor mahsulot uchun bir buyruqda deploy qilish imkonini beradigan platformadan foydalaning. Yuklama yuqori bo‘lganda keyingi qadam — o‘z serveringiz. Murakkab narsadan boshlamang.
Darhol o‘z serveringizni ijaraga olib, uni qo‘lda sozlashingiz shart emas — boshida bu murakkab ish bo‘lib, vaqtingizni oladi. Mahsulot o‘sishi bilan ko‘tarilishingiz mumkin bo‘lgan pog‘onalar bor:
- Bepul hosting (masalan, Vercel) — o‘zingiz, sinovlar va kichik loyihalar uchun. Platforma auditoriyangiz uchun ochiq bo‘lsa va odamlarning shaxsiy ma’lumotlarini saqlamasangiz, ishlaydi.
- Bir buyruqda deploy qilinadigan platforma (Railway) — backend va ma’lumotlar bazangiz bo‘lganda. Bir buyruq bilan deploy qilasiz va serverni sozlashingiz shart emas. Boshlash to‘sig‘i juda past.
- O‘z ajratilgan serveringiz — yuklama yuqori bo‘lganda va to‘liq nazorat kerak bo‘lganda. Platforma chegarasiga yetgach, keyinroq unga o‘ting.
Yangi ishga tushirgan dasturchi bo‘lmagan odam uchun eng oson yo‘l — serverni qo‘lda sozlamasdan, bir buyruqda deploy qilinadigan platformadan foydalanish. O‘z serveringizga keyinroq o‘ting. Bu yo‘lni aniq misol bilan ko‘rmoqchi bo‘lsangiz, vibe coding loyihasini Coolify yordamida o‘z serveringizga joylashtirish qo‘llanmasiga qarang.
Ilova, ma’lumotlar bazasi va zaxira nusxalarini qachon ajratish kerak?
Asosiy xulosa
Mahsulot kichik ekan, ilova va ma’lumotlar bazasi bir mashinada turadi. Eng yuqori yuklama 70–80 foizdan oshib tursa yoki ma’lumotlar bazasi bilan ilova bir-birini sekinlata boshlasa, ularni ajratish vaqti kelgan bo‘ladi. Zaxira nusxalari uchun 3-2-1 qoidasiga amal qiling: uchta nusxa, ikki xil saqlash muhiti va bittasi boshqa joyda. Zaxira nusxalari “esimga tushganda” emas, avtomatik yaratilishi kerak.
Uch narsani bir savatda saqlamaslik kerak: ilova, ma’lumotlar bazasi va zaxira nusxalari. Foydalanuvchilar oz ekan, hammasi bir joyda turadi va bu normal. Ammo ularni ajratish vaqti kelganini bildiradigan aniq belgi bor.
- Ilova va ma’lumotlar bazasini turli mashinalarga joylashtiring. Belgi: eng yuqori yuklama paytida CPU va xotira 70–80 foizdan yuqori bo‘lib turadi, so‘rovlar sekinlashadi va ilova bilan ma’lumotlar bazasi bir xil resurslar uchun kurashadi. Ularni ajratgach, ilovaga tegmasdan ma’lumotlar bazasini kuchaytirishingiz mumkin — yoki aksincha.
- 3-2-1 zaxira nusxasi qoidasiga amal qiling. Ma’lumotlarning uchta nusxasi, ikki xil saqlash muhitida, bittasi boshqa joyda. Bu qurilma nosozligi va to‘lov talab qiluvchi zararli dasturlardan himoya qiladi. Muhimi, zaxira nusxalari avtomatik yaratilishi kerak.
Zaxira nusxasini yaratish tezligi bir necha soatlik ma’lumot yo‘qolishi qanchalik qimmatga tushishiga bog‘liq. Bir soatlik to‘lov yozuvlarini yo‘qotish qabul qilib bo‘lmaydigan onlayn obuna xizmatida zaxiralash oralig‘i bir soatdan qisqa bo‘lishi yoki tekshirilgan tranzaksiya loglari va vaqt nuqtasiga tiklash (PITR) ishlashi kerak. Oraliqni yo‘qotish mumkin bo‘lgan eng ko‘p ma’lumotdan kelib chiqib tanlang; xizmatni tiklash vaqtini alohida sinang. Blog uchun kuniga bir marta yetarli. Mantiq oddiy: qancha ma’lumotni yo‘qotishga chiday olishingizni hal qiling va zaxira nusxalarini shunga mos sozlang.
So‘rov matni: Alohida serverlarga o‘tish vaqti keldimi?
Mahsulotim jiddiyroq infratuzilmaga o‘tishi vaqti kelgan-kelmaganini hal qilishga yordam bering. Har bir bandni tekshiring va mendan so‘rang:
Eng yuqori yuklama paytida CPU va xotira qanchalik band — foydalanish 70–80 foizdan oshib turibdimi yoki yo‘qmi?
Ma’lumotlar bazasi va ilova bir mashinadami yoki turli mashinalardami?
Ma’lumotlar bazasining avtomatik zaxira nusxasi sozlanganmi va undan tiklashni sinab ko‘rganmanmi?
Deploy qilishdan oldin tekshirish uchun muhitning alohida nusxasi (staging) bormi?
Natijalarga asoslanib, aniq tavsiya bering: nimani o‘z holicha qoldirish, avval nimani ajratish va nima sababdan.
Boshqa bir masala: boshqariladigan ma’lumotlar bazasimi yoki o‘zingizniki. Kichik jamoa uchun boshqariladigani deyarli har doim ma’qul: o‘zingizniki qurilma narxida arzonroq, ammo parvarishlashga soatlar ketadi. Agar yolg‘iz bo‘lsangiz va mahsulotingiz infratuzilma bilan bog‘liq bo‘lmasa, o‘sha soatlarga ketadigan xarajat server narxidagi farqdan ko‘proq bo‘ladi.
Parvarishlashni qanday avtomatlashtirish mumkin?
Asosiy xulosa
Parvarishlash qo‘lda bajarilishi shart emas. Ikki kuzatuv vositasi asosiy ehtiyojlarni qoplaydi: biri sayt ishlayotganini tekshiradi, ikkinchisi mahsulot ichidagi xatolarni aniqlaydi. Shuningdek, ertalabki tekshiruvni bajarish uchun AI agentini sozlashingiz mumkin — u foydalanuvchilar xabarlarini o‘qiydi, nima buzilganini topadi va qo‘llashga tayyor tuzatishni taqdim etadi. Ammo xabar yuborish va ommaviy amallar butun ma’lumotlar bazasida birdaniga emas, partiyalab bajarilishi kerak.
Qo‘lda parvarishlash holdan toydiradi. Bu ishni ikki yo‘l bilan yengillashtirish mumkin: kuzatuv vositalari va patrul agenti.
Kuzatuvning har biri alohida vazifaga mo‘ljallangan ikki vositasi bor:
- “Sayt ishlab turibdimi?” — ishlash vaqti kuzatuvchisi (masalan, UptimeRobot). U mahsulotni har bir necha daqiqada tekshiradi va ishlamay qolsa ogohlantirish yuboradi. Bepul rejasi bor.
- “Aynan nima buzildi?” — xatolar kuzatuvchisi (masalan, Sentry). U ilova ichidagi xatolarni yig‘adi va nimaning qayerda va nima sababdan ishdan chiqqanini ko‘rsatadi.
Birinchisi mahsulot ishlamay qolganini aniqlaydi. Ikkinchisi qaysi funksiya va nima sababdan ishdan chiqqanini ko‘rsatadi. Birgalikda ular “Mijoz yordam xizmatiga yozishidan oldin nosozlik haqida bilib olamanmi?” degan savolga javob beradi.
Avtomatlashtirishning ikkinchi bosqichi — patrul agenti. Ko‘chmas mulk agentligini tasavvur qiling: ertalab soat yettida AI agenti saytga kelgan so‘rovlarni o‘qiydi, bronlash shakli buzilganini ko‘radi, koddan sababini topadi va izohi bilan tayyor tuzatishni taqdim etadi. Siz uni ko‘rib chiqib, “ha” deysiz — tuzatish deploy qilinadi. Tartib muhim: avval foydalanuvchining muammosini hal qiling (kirish huquqini bering, uzr so‘rang), keyin sabab va pul masalasini tekshiring.
Diqqat
Butun ma’lumotlar bazasida ommaviy amallarni birdaniga bajarmang. Hamma foydalanuvchiga bir paytning o‘zida xat yuborsangiz, server qiynaladi va xatlarning yarmi spamga tushadi. To‘g‘ri yondashuv — partiyalar bilan ishlash: kuniga 100–1 000 tadan, kun davomida tarqatib yuboring. Bu har qanday mijozlar bazasiga tegishli: do‘kon, klinika yoki xizmatga.
AI’ning ishlab turgan ma’lumotlar bazasiga kirishi haqida yana bir qoida: unga faqat o‘qish huquqiga ega foydalanuvchi bering va agent haqiqiy ism o‘rniga “ism”ni ko‘rishi uchun shaxsiy ma’lumotlarni oraliq qatlam ortida yashiring. Shunda, xato qilsa ham, u jismonan ishlab turgan ma’lumotlarni o‘chira yoki buzolmaydi. Yuqoridagi jadvaldagi, agent ishlab turgan ma’lumotlar bazasini yo‘q qilgan voqea aynan shu cheklov yo‘qligi haqida. AI ma’lumotlar bazangizni o‘chirib yuborsa nima qilish kerak qo‘llanmasida falokat allaqachon yuz bergan bo‘lsa, nima qilish tushuntirilgan.
Mahsulotni qachon yopish kerak?
Asosiy xulosa
Har bir mahsulotni parvarishlash kerak emas; ayrimlarini yopish kerak. G‘oyaga hayotiyligini isbotlash uchun ikki hafta bering, qat’iy chegara — uch oy. Ish yurishmasa, sarflagan vaqtingizdan qanchalik afsuslanishingizdan qat’i nazar, mahsulotni yoping. Mahsulotni yomon kod emas, undan foydalanishni to‘xtatgan odamlar o‘ldiradi. Hamma tugallanmagan loyihalar qabristoniga ega — bu normal.
Parvarishlashning eng kam baholanadigan qismi — qachon parvarishlashni to‘xtatishni bilish. Ko‘p narsa yaratadigan har bir kishining loyihalar qabristoni bor: bittasini yaratadi, u bilan shug‘ullanadi, keyin tashlab qo‘yadi. Bu normal va muvaffaqiyatsizlik emas. Sarflangan vaqtdan afsuslanib, hech kim foydalanmaydigan narsani oylar davomida sudrab yurish — muvaffaqiyatsizlik shu.
Qaror chiqarish uchun foydalanishingiz mumkin bo‘lgan chegaralar:
- Ikki hafta — g‘oya ish beradimi-yo‘qmi bilish uchun yetarli muddat. Birinchi haqiqiy foydalanuvchilar qaytib kelsa, davom eting. Sukut ham javob.
- Uch oy — qat’iy chegara. Uch oyda ish yurishmasa, uni yoping. Vibe coding tezligini hisobga olsak, bitta g‘oyani olti oy sinash juda uzoq.
Loyihani yopish ruhiy jihatdan qiyin, shuning uchun buni his-tuyg‘u emas, qaror sifatida qabul qiling. Sarmoya kiritgan loyihangizni qo‘yib yuborish ishini bajara olmaydigan xodimni ishdan bo‘shatishga o‘xshaydi: yoqimsiz, ammo uni ushlab turish ketkazishdan qimmatroq.
Parvarishlash — mahsulotni tirik va odamlar uchun foydali saqlashga qaratilgan ish. Qolgan hamma narsa — git, zaxira nusxalari, kuzatuv — mahsulot har kuni siz uchun ishlay boshlaydigan nuqtaga yetishga yordam beradigan vositalardir.
Bir oqshomda AI yordamida mahsulot yaratish — ishning yarmi. Mahsulot o‘sib borganda uni tirik va xavfsiz saqlash — ulg‘ayganlar uchun vibe coding degani shu.
Keyingi qadamingiz uchun — Ailoot.
Batafsil
Ko‘p beriladigan savollar
To‘lovli xizmatni qanchalik tez zaxiralash kerak?
Oraliqni yo‘qotishga rozi bo‘lgan eng ko‘p ma’lumotga qarab tanlang. Bir soatni yo‘qotish mumkin bo‘lmasa, soatiga bir martadan tezroq nusxa yoki tekshirilgan tranzaksiya logi/PITR kerak. Tiklash haqiqatan qancha vaqt olishini ham sinang.
Uptime monitor mahsulot sog‘lig‘ini tekshirishga yetadimi?
Yo‘q. U sayt javob berishini, xato kuzatuvchisi esa ilova ichidagi nosozliklarni ko‘rsatadi. Relizdan oldin muhim foydalanuvchi yo‘llarini staging’da sinang va zaxiradan tiklashni tekshiring.