?? O'zbekistondagi N1 Akkaunt Savdo Kanali!
‼️ Eslatma: Kanalimizga Joylanayotgan Akkauntlarning Barchasi Turnirda Yutilgan!
? Kanalga Joylangan Xar Bir Akkauntga "SENATOR" Shaxsan O'zi Javob Beradi!
✍️Admin: @deSENATOR_AKKS ✅ Org ‼
©️SENATOR PUBGM
Last updated 1 year, 1 month ago
🔔 Reklama: @Edurekadmin
Ta'limda nima yangiliklar?
O'zbekiston ta'lim sferasidagi eng oxirgi va eng dolzarb yangiliklarini aynan shu kanaldan topasiz!
© Kanaldan to'liq yoki qisman ma'lumot olinganda manba ko'rsatilishi shart!
📩 @Edu_murojaatBot
Last updated 1 month, 1 week ago
Kun davomida eng sara va so'nggi yangiliklar tafsiloti bilan YO'L-YO'LAKAY tanishtirib boramiz.
Voqea va hodisaga guvoh bo‘ldingizmi, videolaringizni bizga yuboring: @yyuzbot
Reklama bo‘yicha: @zorzorads
Instagram sahifamiz: https://bit.ly/3wlZDZH
Last updated 2 weeks, 2 days ago
Connection Pooling Pgbouncer nima?
Assalamu Aleykum azizlar!. Men Mukhammad Irmatov postlaridan kelib chiqib Pgbouncer haqida qisqacha ma'lumot berib o'tmoqchi edim.
Yuqoridagi postda aytib o'tilganidak Postrgesql har bir kiruvchi client request uchun connection yaratadi. Har bir connection uchun serverdan joy ajratiladi. Qarabsizki 100ta request va 100ta connection, bundan kelib chiqadiki resource to'ladi va PostgreSQL resourlar to'lguncha request larga connection ochib klientlarga javob bera oladi. Bu model Client-Server arxitekturasi deb nomlanadi, albatta sekin, effektivniy hisoblanmaydi. Shuning uchun Connection pool bizga yordam beradi. Bunga bitta misol PostgreSQL uchun albatta PgBouncer.
Pgbouncer bu Connection pool ga javob beruvchi, klient va DB o'rtasida turuvchi middleware protses hisoblanadi. Mijoz Pgbouncerga ulanadi va bir vaqtda pgbouncer DBga ulanadi. Pgbouncer o'ziga katta miqdorda connection so'rovlarni qabul qiladi va pooling yordamida bazaga bo'lgan haqiqiy connectionlarni kamaytiradi. Bunda http requestlarimiz tez ishlashni ham boshlaydi. Sababi har bir kiruvchi http request uchun yangi haqiqy connection ochilmaydi va yopilmaydi, CPU va Memorydan joy ajratilmaydi, bundan kelib chiqadiki baza requestlarni avvalgi holatiga qaraganda tezroq handling qiladi.
PgBouncerni 3 turdagi pool_mode mavjud.
Bular:
1. Session - mijoz sessiyani uzgandan so'ng connection poolga qaytarib beriladi.
2. Transaction - har bir tugatilgan transactiondan so'ng connection poolga qaytadi.
3. Statement - har bir sql so'rovdan so'ng connection poolga qaytadi.
Connection poolga qaytadi va boshqa kirib keluvchi requestlarga javob berishi mumkun bo'ladi. Ko'pgina hollarda Tranction pool_mode ishlatilish tavsiya beriladi.
ChatGPT ga rahmat, 70-80 % rezyumelar ancha yaxshilanib, to’g’ri formatga tushib qolibdi.
Faqat birgina iltimos rezyumeni wordda va hh.uz generate qilib bergan shablon da qilmanglar )
Nega moliyaviy jihatdan muammosi yo’q, istalgan server resurslarni sotib olishga qodir bo’lgan uzavtosanoat.uz sayti har doim down bo’ladi? Ular ham hech 1 million user bilan load test qilib, qachon down bo’lishini bilib shunga yarasha tayyorgarlik ko’rishadimi?
Agar sizga 1 yil vaqt berib, shu saytni down bo’lmaydigan qilgin deganda qanday yo’l tutgan bo’lardingiz? Qaysi texnologiya va usullardan foydalanib, down bo’lishini oldini olardingiz?
Load testing qilish aysbergni uchi xolos, asosiy qilinadigan ish testdan keyin bo’ladi. Har bir “Nega” degan savollaringizga debug qilib, javob olishga harakat qiling.
Agar database javob berish vaqti oshib ketib, loglarda 504(timeout) error qaytarayotgan bo’lsa, qaysi querylar ko’p vaqtni olyapti, qaysi querylarni optimizatsiya qilish haqida bosh qotirishim kerak deb o’zingizga savol bering.
Agar server CPU va memory ga yuklama 90% dan oshib ketsa, demak server resurslarini oshirish haqida bosh qotirishingiz kerakdir.
Qolgan barcha savollaringizga shoshmasdan, o’ylab javob olishga harakat qiling.
Dasturingiz BUG siz, RPS ingiz har doim baland bo’lsin : )
Load testing nega kerak?
Loyihadagi eng oxirgi buglarni ham to’g’irlab, so’nggi o’zgarishlarni deploy qilgach, endi nima ish qilsam ekan deb o’ylayotgan bo’lsangiz, dasturingizni load(stress) test qilib, uning imkoniyatlarini bilib olganingiz maqul.
Load testing - dasturga turli xil yuklama berish orqali ya’ni dastur yuklama yo’q, yuklama ko’p va yuklama haddan tashqari ko’p vaqtda qanday ishlashini bilib olish mumkin bo’ladi.
Siz o’zingiz ishlab chiqqan dasturni tinch holatda tekshirganingizda aksariyat holatda test muvaffaqiyatli o’tadi. Lekin dasturingizga 1000, 10000 va 100000 lab request jo’natilganda qanday ishlashini, qachon server ishlashdan to’xtashini albatta tekshirib olishingiz kerak.
Load testing(stress test ham deb atashadi) quyidagi savollarga javob topish uchun kerak:
1) Serverdan bir vaqtda foydalanuvchilar soni keskin oshganda qanday ishlaydi
2) Serverni maksimal qobiliyati qanday ya’ni bir vaqtda maksimal qancha user yoki qancha so’rovlarga javob bera oladi yoki server down bo’lish nuqtasi qayerda
3) Foydalanuvchilar soni oshganda response time qanchalik o’zgaradi
4) Dasturni qayerida qanday muammolar bor. Database querylar to’g’ri sozlanmaganmi yoki server resurslari yetarlimi yoki yo’q
Bu ma’lumotlarni bilish sizga dasturingiz kamchiliklarini to’g’irlashga va resurslarni to’g’ri sarflashga yordam beradi
So’nggi oylarda elektromobillarni zaryadlash biznesi ancha ommalashdi. Ilovalar ichida Tokbor va Megawatt ilovalari dizayn tomonlama ham, qulaylik tomonlama ham talabga umuman javob bermay qo’ygan.
Aprel oyidan boshlab, foydalanuvchi uchun qulay va sodda ilova yaratishni boshladik. Zaryadlash stansiyasi bilan serverni orasida bog’lanish uchun OCPP standartidan foydalaniladi ya’ni stansiyani ishlayotgan yoki ishlamayotganligi haqida signallar ham, user tomonidan mashinani zaryadlashni boshlash uchun yuboriladigan Start va zaryadlashni to’xtatish uchun Stop buyruqlar ham hammasi OCPP standarti orqali boshqariladi. Aynan shu qismi juda ko’p vaqt va resurni oldi.
Boshida 3-4 oyda bitadigandek ko’ringan sodda ilova, alohida backend, websocket server, korporativ vebsayt va Admin paneldan tashkil topgan ulkan loyihaga aylanib ketdi. Loyiha muvaffaqiyatli va o’z vaqtida topshirlishi juda ko’p faktorlarga bog’liq lekin kuchli jamoa va IT ni tushunadigan odamlar bilan birga ishlasangiz loyihani tezroq va ortiqcha stress va boshog’riqlarsiz topshirasiz.
Bizda biznes egalari odatda mutlaqo IT dan uzoq bo’lganligi uchun, websocket serverda qayeridadir muammo bo’lyapti desangiz, “men bilmayman qanday qilib bo’lsa ham to’g’irlanglar” degan javob eshitasiz yoki bo’lmasam dasturchi bilan maslahatlashmasdan turib, developmentda turgan product ni keng omma uchun ya’ni production uchun ham chiqarib yuboraveradi ?
Shunday katta loyiha birgina backend dasturchi uchun og’irlik qiladi. Men bilan birga Abduaziz ham katta hajmdagi ishni bajardi. Abduaziz ni (AbduazizPy) o’zim tanigan eng ijodkor python dasturchilaridan biri deb hisoblayman
Ilova uchun link: Play market & Appstore
Concurrency vs Parallelism bittami? Disclaimer — Bu ikki atamani o’zbekcha tarjimasini qidirgan edim, ikkalasini ham bir xil, parallellik deb tarjima qilib berdi. Shuning uchun asl holatida yozaman. Concurrency va parallelism o’xshash, ikkisi ham bir necha…
?? O'zbekistondagi N1 Akkaunt Savdo Kanali!
‼️ Eslatma: Kanalimizga Joylanayotgan Akkauntlarning Barchasi Turnirda Yutilgan!
? Kanalga Joylangan Xar Bir Akkauntga "SENATOR" Shaxsan O'zi Javob Beradi!
✍️Admin: @deSENATOR_AKKS ✅ Org ‼
©️SENATOR PUBGM
Last updated 1 year, 1 month ago
🔔 Reklama: @Edurekadmin
Ta'limda nima yangiliklar?
O'zbekiston ta'lim sferasidagi eng oxirgi va eng dolzarb yangiliklarini aynan shu kanaldan topasiz!
© Kanaldan to'liq yoki qisman ma'lumot olinganda manba ko'rsatilishi shart!
📩 @Edu_murojaatBot
Last updated 1 month, 1 week ago
Kun davomida eng sara va so'nggi yangiliklar tafsiloti bilan YO'L-YO'LAKAY tanishtirib boramiz.
Voqea va hodisaga guvoh bo‘ldingizmi, videolaringizni bizga yuboring: @yyuzbot
Reklama bo‘yicha: @zorzorads
Instagram sahifamiz: https://bit.ly/3wlZDZH
Last updated 2 weeks, 2 days ago