Akobir interviewʼsi
Akobir bilan boʻlgan holat juda achinarli. Biznes va egʻtiqod bir biriga ulanmasligi kerak.
Holat yuzasidan ertalabdan koʻp kanallarda va aynan LinkedIngʻning oʻzida fikrlar bildirilgan. Bu shaxsiy yondashuv yoki korxona talabi ekani hali aniq emas.
1. Holatga aniqlik kiritish kerak, bunga Nuriddin taklif etgan murasaddi tashkilotlarga murojaat qilish toʻgʻri deb bilaman. Hamma oʻzini fikrini gapirsa haqiqat yuzaga chiqib qolmaydi. Surishtiruv kerak.
2. Dinimizda har ikki tomonni eshitish buyurilgan. Akhmadiyning postida ham shu nazarda tutilgan.
3. Baykot yaxshi narsa. Koʻrinib turibdi juda foydali boʻldi va koʻpchilik bunga qoʻshildi. 1-ishni qilib boʻlgach, yoppasiga korxonaga baykot qilsa arziydi. Hozircha aniqlik kiritish yaxshi yechim.
Oʻz uyingda qoidalar boʻlmas ekan, tashqaridan kirgan korxona sanga qoidasini oʻtkazadi. Hattoki UAE boʻlsa ham.
Bu yaxshi signal. Uygʻotishdimi, endi koʻrsatib qoʻyaylik. Qoidalarni (policies) ishlab chiqib, kim uyda xoʻyajin ekanini koʻrsataylik.
Birlashish qoʻlimizdan kelar ekan. Mana koʻrdik. Keling endi aslida qayday boʻlishi kerak, takliflarni ishlab chiqib, oʻrtaga tashlaylik.
P.S. UAEda katta kazino oroli qurilishi boshlandi.
@DrAlgorithm
Akobir bilan boʻlgan holat juda achinarli. Biznes va egʻtiqod bir biriga ulanmasligi kerak.
Holat yuzasidan ertalabdan koʻp kanallarda va aynan LinkedIngʻning oʻzida fikrlar bildirilgan. Bu shaxsiy yondashuv yoki korxona talabi ekani hali aniq emas.
1. Holatga aniqlik kiritish kerak, bunga Nuriddin taklif etgan murasaddi tashkilotlarga murojaat qilish toʻgʻri deb bilaman. Hamma oʻzini fikrini gapirsa haqiqat yuzaga chiqib qolmaydi. Surishtiruv kerak.
2. Dinimizda har ikki tomonni eshitish buyurilgan. Akhmadiyning postida ham shu nazarda tutilgan.
3. Baykot yaxshi narsa. Koʻrinib turibdi juda foydali boʻldi va koʻpchilik bunga qoʻshildi. 1-ishni qilib boʻlgach, yoppasiga korxonaga baykot qilsa arziydi. Hozircha aniqlik kiritish yaxshi yechim.
Oʻzingda yoʻq, olamda yoʻq .
Oʻz uyingda qoidalar boʻlmas ekan, tashqaridan kirgan korxona sanga qoidasini oʻtkazadi. Hattoki UAE boʻlsa ham.
Bu yaxshi signal. Uygʻotishdimi, endi koʻrsatib qoʻyaylik. Qoidalarni (policies) ishlab chiqib, kim uyda xoʻyajin ekanini koʻrsataylik.
Arz qilish oson, yechim taklif qilish qiyin.
Birlashish qoʻlimizdan kelar ekan. Mana koʻrdik. Keling endi aslida qayday boʻlishi kerak, takliflarni ishlab chiqib, oʻrtaga tashlaylik.
P.S. UAEda katta kazino oroli qurilishi boshlandi.
@DrAlgorithm
👍24🔥2
UNICON SOFT
Premyera ertaga soat 10:00da, o'tkazib yubormaslik uchun kanalga obuna bo'lib qo'ying 🌐 «Junior» ham dasturchimi? Saidolim Djurayev (CTO, Moneff) bilan dasturchilik va dasturchilar haqida #texnosuhbat Kanalga obuna bo‘ling ⌛ https://www.youtube.com/channel/UC…
Junior vs "Junior"
Bu postni chiqargan vaqtim hali video e'lon qilinmagan edi. 2 ta kanalga qo`ygan edim, hamma junior mavzusiga kirishib ketishdi. Zo`r tajriba bo`ldi, ham. Qo`shtirnoq ichidagi so`z asli ma'noda kelmasligini ko`pchilik beetibor qoldirgandek bo`ldi.
Videoni ko`rganlar bo`lsa, fikr bersangiz hursand bo`lardim. Hozircha videodagi mavulardan quyidagilarni olib chiqa oldim. Agar siz boshqa mavzularni ham ko`rgan bo`lsangiz video tagida (comment) yoki bu yerda yozishingiz mumkin.
https://youtu.be/c-DNBEUbXQw
Savollaringizga javob berishga tayyorman.
To`xtalib o`tilgan mavzular:
1. Vatan manfaatlari birinchi oʻrinda turadi.
2. Dasturlash tilini oʻrgandim, men dasturchi boʻlib qoladimmi?
3. Dasturlashni oʻrgandim, nima uchun korxonalarda ishlay olmayapman?
4. Oʻquv yurtini biritsa junior hisoblanadimi?
5. Oʻquv yurti toʻliq dasturchi chiqara oldimi?
6. Loyihalarda ishlash kursi.
7. Hard skills vs soft skills.
8. Nima uchun majlis (call)ga kech qolamiz?
9. IT korxonalarda vaziyat qanday?
10. Mock interview, kim qila oladi?
11. IDE va boshqa asbob (tool)larni sotib olish shartmi?
12. Tajribali dasturchilarni chet el korxonalari qaydan qilib topadi?
13. Oʻzbek dasturchisi chet elda ishlashi: orzu yoki haqiqat?
14. Loyihaning 20%-30% igina Dasturlash tilini tashkil qiladi.
15. Layoff nima?
16. Tanish bilish, networking, qanday ishlashini bilasizmi?
17. Ingliz tilini ... esdan chiqdi.
18. O`zbek IT korxonasi yevropaga kira oladimi?
19. Osiyo dasturchilari o`ziga hosligi.
20. Vaqtida bajarish yoki chiroli kod yozish?
21. Va'da berib, vaqtida bajarish bu bizning qadryatlarimizdan.
22. Dasturchining tezligi qanday bo`lishi kerak?
23. Tadbirkor-dasturchi yoki dasturchi-tadbirkor.
24. Passiv ish qidirish nima?
Alohida aytib o`tishim kerak, "Open source da baraka bor" iborasi mualifi Muhammadkarim bo`ladilar. Ularning ham Texnosuhbat videolari bor.
@DrAlgorithm
Bu postni chiqargan vaqtim hali video e'lon qilinmagan edi. 2 ta kanalga qo`ygan edim, hamma junior mavzusiga kirishib ketishdi. Zo`r tajriba bo`ldi, ham. Qo`shtirnoq ichidagi so`z asli ma'noda kelmasligini ko`pchilik beetibor qoldirgandek bo`ldi.
Videoni ko`rganlar bo`lsa, fikr bersangiz hursand bo`lardim. Hozircha videodagi mavulardan quyidagilarni olib chiqa oldim. Agar siz boshqa mavzularni ham ko`rgan bo`lsangiz video tagida (comment) yoki bu yerda yozishingiz mumkin.
https://youtu.be/c-DNBEUbXQw
Savollaringizga javob berishga tayyorman.
To`xtalib o`tilgan mavzular:
1. Vatan manfaatlari birinchi oʻrinda turadi.
2. Dasturlash tilini oʻrgandim, men dasturchi boʻlib qoladimmi?
3. Dasturlashni oʻrgandim, nima uchun korxonalarda ishlay olmayapman?
4. Oʻquv yurtini biritsa junior hisoblanadimi?
5. Oʻquv yurti toʻliq dasturchi chiqara oldimi?
6. Loyihalarda ishlash kursi.
7. Hard skills vs soft skills.
8. Nima uchun majlis (call)ga kech qolamiz?
9. IT korxonalarda vaziyat qanday?
10. Mock interview, kim qila oladi?
11. IDE va boshqa asbob (tool)larni sotib olish shartmi?
12. Tajribali dasturchilarni chet el korxonalari qaydan qilib topadi?
13. Oʻzbek dasturchisi chet elda ishlashi: orzu yoki haqiqat?
14. Loyihaning 20%-30% igina Dasturlash tilini tashkil qiladi.
15. Layoff nima?
16. Tanish bilish, networking, qanday ishlashini bilasizmi?
17. Ingliz tilini ... esdan chiqdi.
18. O`zbek IT korxonasi yevropaga kira oladimi?
19. Osiyo dasturchilari o`ziga hosligi.
20. Vaqtida bajarish yoki chiroli kod yozish?
21. Va'da berib, vaqtida bajarish bu bizning qadryatlarimizdan.
22. Dasturchining tezligi qanday bo`lishi kerak?
23. Tadbirkor-dasturchi yoki dasturchi-tadbirkor.
24. Passiv ish qidirish nima?
Alohida aytib o`tishim kerak, "Open source da baraka bor" iborasi mualifi Muhammadkarim bo`ladilar. Ularning ham Texnosuhbat videolari bor.
@DrAlgorithm
👍7🔥3❤2⚡2☃1
@Rustam-Z | IT, Europe 🇩🇪, MAANG⚡️
Received an offer from Google
Yana bir yurtdoshimiz Google'da 🎉
Muborak bo`lsin!
1. Odam qilan ishni odam qiladi.
2. Biror narsaga erishish uchun qattiq mehnat qilish kerak.
3. Imkonsiz narsa faqat o`limdan kutulish.
Hurmatli dasturchilar va dasturlashni o`rganayotgan yurtdoshlar. Hech qachon taslim bo`lmang va imkon qadar mehnatdan to`xtamang. Siz o`ylagan IT korxonalar siz o`ylaganingizdan sizga ancha yaqin!
Rustamni tabriklaymiz! 🎉
@DrAlgorithm
Muborak bo`lsin!
1. Odam qilan ishni odam qiladi.
2. Biror narsaga erishish uchun qattiq mehnat qilish kerak.
3. Imkonsiz narsa faqat o`limdan kutulish.
Hurmatli dasturchilar va dasturlashni o`rganayotgan yurtdoshlar. Hech qachon taslim bo`lmang va imkon qadar mehnatdan to`xtamang. Siz o`ylagan IT korxonalar siz o`ylaganingizdan sizga ancha yaqin!
Rustamni tabriklaymiz! 🎉
@DrAlgorithm
👍22❤4⚡3🔥1😢1🎉1
Pul topar sayt
Bir kuni dasturlashga qiziqayotgan bola veb-sayt (website) qilib bering deb qoldi.
- Qanaqa sayt boʻlsin? - dedim.
- 2-3 oyda pul keltiradigan, - dedi.
- Qancha pul keltirishi kerak?
- Oyiga 2-3 ming boʻlsa yetadi.
- Qancha berasiz?
- Qancha turadi shunaqa sayt? - deb soʻradi.
- 10,000 tursa kerak.
- Boʻldi, yasab bering. Faqat oyiga 2,000 keltirsin, kamida. Sizga 6 oyda pulizzi beraman....
😲 🤔 🤨
@DrAlgorithm
Bir kuni dasturlashga qiziqayotgan bola veb-sayt (website) qilib bering deb qoldi.
- Qanaqa sayt boʻlsin? - dedim.
- 2-3 oyda pul keltiradigan, - dedi.
- Qancha pul keltirishi kerak?
- Oyiga 2-3 ming boʻlsa yetadi.
- Qancha berasiz?
- Qancha turadi shunaqa sayt? - deb soʻradi.
- 10,000 tursa kerak.
- Boʻldi, yasab bering. Faqat oyiga 2,000 keltirsin, kamida. Sizga 6 oyda pulizzi beraman....
@DrAlgorithm
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣90😁2🔥1
Diplom shartmi?
Universitetda oʻqish shartmi?
Man javobini topdim.
@DrAlgorithm
Universitetda oʻqish shartmi?
Man javobini topdim.
Universitet menga nima beradi emas,
Universitetda nima oʻrgana olaman? - deb fikrlash kerak.
@DrAlgorithm
👍27🔥3
Telegram
Aziz Rahimov
Doimiylari muhimroq bo’ladi
700 kundan beri ertalab mashq uchun chiqamiz.
Kasallik, safar, ramazon bo’lmasa - deyarli qoldirmaymiz.
Eshitganlar qo’shilishni so’raganida - odam ko’payib ketmasin deb, yo’q deb yurardim.
Endi kim so’rasa ham - ha ertadan…
700 kundan beri ertalab mashq uchun chiqamiz.
Kasallik, safar, ramazon bo’lmasa - deyarli qoldirmaymiz.
Eshitganlar qo’shilishni so’raganida - odam ko’payib ketmasin deb, yo’q deb yurardim.
Endi kim so’rasa ham - ha ertadan…
Bitta katta lagan oshdan,
Kunlik kichik kosa yaxshi.
Azizbek Rahimov juda zoʻr maqola chop etibdilar. Oʻqib koʻring tavsiya etaman.
https://t.me/azizrakhimov_blog/763
Deadline deb koʻp bong uramiz. Ulgurmayapmiz deb ishdan tashqari (overtime) ishlaymiz. Yechimi esa sodda ekan.
Small steps = Kichik qadamlar
Koʻp ish qilish shart emas. Ulgurganizcha qism bilan boshlang va ketma-ketlikni uzmang, vaqti kelib kunlik meyorni (norma) koʻtarib boras.
Kichik qadamlar uchun bugun kichik qadam qoʻying.
@DrAlgorithm
👍12💯2
Chet elda magistraturaga Grant yutish haqidagi taqdimot boshlandi:
https://www.youtube.com/live/4D3HX3FlH7g
O`tkazib yubormang!
@DrAlgorithm
https://www.youtube.com/live/4D3HX3FlH7g
O`tkazib yubormang!
@DrAlgorithm
❤8⚡2
Forwarded from UzGeeks Community
Assalom alaykum!!!
UzGeeks'da PHP kuni!
📆 25-may shanba kuni Toshkent shahri Raqamli texnologiyalar vazirligi binosida "UzGeeks May2024 PHP Day Meetup" bo'lib o'tadi.
1️⃣. “PHP - Highload” - Milly Khamroev(Senior engineer/TeamLead, Click/Modme)
🕰 Meetup odatiy ravishda bepul bo'lib, soat 14:00 da boshlanadi, unda qatnashish uchun UzGeeks saytida ro'yxatdan o'tish kerak.
Manzil: Toshkent shahar, Mirzo Ulug'bek tumani, Muminov ko’chasi, 4A(Raqamli texnologiyalar vazirligi binosida)
Hamkorlar:
O'zbekiston Respublikasi Raqamli texnologiyalar vazirligi
Raqamli ta'limni rivojlantirish markazi
Thinkland
Tadbir facebookda
🌐 UzGeeks.uz
UzGeeks'da PHP kuni!
📆 25-may shanba kuni Toshkent shahri Raqamli texnologiyalar vazirligi binosida "UzGeeks May2024 PHP Day Meetup" bo'lib o'tadi.
1️⃣. “PHP - Highload” - Milly Khamroev(Senior engineer/TeamLead, Click/Modme)
🕰 Meetup odatiy ravishda bepul bo'lib, soat 14:00 da boshlanadi, unda qatnashish uchun UzGeeks saytida ro'yxatdan o'tish kerak.
Manzil: Toshkent shahar, Mirzo Ulug'bek tumani, Muminov ko’chasi, 4A(Raqamli texnologiyalar vazirligi binosida)
Hamkorlar:
O'zbekiston Respublikasi Raqamli texnologiyalar vazirligi
Raqamli ta'limni rivojlantirish markazi
Thinkland
Tadbir facebookda
🌐 UzGeeks.uz
Forwarded from UzGeeks Community
Assalom alaykum!!!
UzGeeks'da PHP kuni!
📆 25-may shanba kuni Toshkent shahri Raqamli texnologiyalar vazirligi binosida "UzGeeks May2024 PHP Day Meetup" bo'lib o'tadi.
📚 Meetup quyidagi bo'limlardan tashkil topgan:
2️⃣. “Futbol yangiliklari arxitekturasini qurish” - Sag'indiq Kenjabaev(Freelancer).
🕰 Meetup odatiy ravishda bepul bo'lib, soat 14:00 da boshlanadi, unda qatnashish uchun UzGeeks saytida ro'yxatdan o'tish kerak.
Manzil: Toshkent shahar, Mirzo Ulug'bek tumani, Muminov ko’chasi, 4A(Raqamli texnologiyalar vazirligi binosida)
Hamkorlar:
O'zbekiston Respublikasi Raqamli texnologiyalar vazirligi
Raqamli ta'limni rivojlantirish markazi
Thinkland
Tadbir facebookda
🌐 UzGeeks.uz
UzGeeks'da PHP kuni!
📆 25-may shanba kuni Toshkent shahri Raqamli texnologiyalar vazirligi binosida "UzGeeks May2024 PHP Day Meetup" bo'lib o'tadi.
📚 Meetup quyidagi bo'limlardan tashkil topgan:
2️⃣. “Futbol yangiliklari arxitekturasini qurish” - Sag'indiq Kenjabaev(Freelancer).
🕰 Meetup odatiy ravishda bepul bo'lib, soat 14:00 da boshlanadi, unda qatnashish uchun UzGeeks saytida ro'yxatdan o'tish kerak.
Manzil: Toshkent shahar, Mirzo Ulug'bek tumani, Muminov ko’chasi, 4A(Raqamli texnologiyalar vazirligi binosida)
Hamkorlar:
O'zbekiston Respublikasi Raqamli texnologiyalar vazirligi
Raqamli ta'limni rivojlantirish markazi
Thinkland
Tadbir facebookda
🌐 UzGeeks.uz
Bugungi UzGeeksning PHP Day tadbiriga uzoqdan Speakerlar taklif qilingan.
Avvallari, Xitoyda boʻlsa ham ilm izla, - deyilardi.
Hozir ustozlarni kelishgan.
Hullas, UzGeeks May2024 PHP Day Meetup da kutamiz.
@DrAlgorithm
Avvallari, Xitoyda boʻlsa ham ilm izla, - deyilardi.
Hozir ustozlarni kelishgan.
Hullas, UzGeeks May2024 PHP Day Meetup da kutamiz.
@DrAlgorithm
👍2⚡1
Forwarded from UzGeeks Community
@uzgeekscommunity kanalda meetup live bo’lmoqda!
Forwarded from Sardor Dushamov | PHP forever
Sag'indiq aka web loyihalarni ustidan qotib tashlayaptimi? Cherperak qilib aylantirib tashayapti, 10-15 minutni ichida katta sport saytini tugatib, APIlarini chiqarib ko'rsatyaptilar. Copilotdan foydalanar ekan. Kod yozish esimdan chiqib ketyapti deydi😅🤦🏻♂️
PHPchi Yii'chida aka
PHPchi Yii'chida aka
⚡14😱3🤣1
Forwarded from UzGeeks Community
Bugungi meetupga kelganlarga, dokladchilarga katta rahmat!
O’ylaymizki foydali va manfaatli bo’ldi!
@uzgeekscommunity
O’ylaymizki foydali va manfaatli bo’ldi!
@uzgeekscommunity
👍11
Forwarded from azam – logs.
Bugun PHP bo'yicha UzGeeks'da meetup bo'lib o'tdi. Ishtirokchi bo'lib qatnashdik. Afsuski dokladchi sifatida qatnashishni reja qilgandim, ammo Mayda tasodifan bo'lib qolgani uchun tayyor bo'lolmadim.
Milly Khamroev akadan yaxshi mavzuda suhbat bo'ldi: PHP Highload.
PHP loyihalarda requestlarga javob berish darajasi, loyihani turib berish, tez ishlash jarayonlarini yaxshilash bo'yicha tajribadan o'tkazishgan case'lari bo'yicha real gapirildi.
Milly Khamroev akadan yaxshi mavzuda suhbat bo'ldi: PHP Highload.
PHP loyihalarda requestlarga javob berish darajasi, loyihani turib berish, tez ishlash jarayonlarini yaxshilash bo'yicha tajribadan o'tkazishgan case'lari bo'yicha real gapirildi.
Forwarded from azam – logs.
azam – logs.
Bugun PHP bo'yicha UzGeeks'da meetup bo'lib o'tdi. Ishtirokchi bo'lib qatnashdik. Afsuski dokladchi sifatida qatnashishni reja qilgandim, ammo Mayda tasodifan bo'lib qolgani uchun tayyor bo'lolmadim. Milly Khamroev akadan yaxshi mavzuda suhbat bo'ldi: PHP…
1. Database: Race Condition. Prizlar ro'yxati bor. 5 tadan 3 tasi aktiv, 2 tasi tark etgan. Endi navbatdagi ishtirokchiga keyingi prizni qaytarish kerak. Bunday holatlarda bir vaqtda ikkita request birga kelishi oqibatida ikkita ishtirokchiga bitta sovg'a ketib qolishi mumkin. Bu narsani oldini olish uchun esa, "Lock for Update" metodi orqali amalga oshirish, bu muammoga yechim beradi. Bu holatda birinchi request tanlagan priz, o'zgarish uchun bloklanadi. Natijada keyingi request bu prizni tanlamaydi, balki boshqasini tanlaydi.
2. Database: Slow queries. Bazaga ko'p murojat qilish va natijada loyihani sekinlashtirish doimiy muammolardan. Indekslash esa bunga yaxshi yechim bera oladi. Bazadagi ma'lumotlarni indekslash orqali slow query'larni ishlashini tezlashtiramiz.
3. Database: Indexing cons. Indekslashni minus tomonlaridan biri, "insert, update, delete" uchun query'larni sekinlashib qolishi. Bu muammoga bazani ikkitaga bo'lish orqali yechim beriladi, ya'ni "DB Replication". Bitta asosiy baza - "insert, update, delete" uchun, ikkinchi baza asosiy bazani ko'chirmasi sifatida "select" uchun ishlatilinadi. Ikkinchi baza asosiy bazadan ma'lumotlarni o'ziga sync qilib turadi.
4. Database: Caching. Ba'zi natijasi o'zgarmas query'larni keshlash bazaga ortiqcha request'ni oldini oladi. Kesh tizimi bazaga murojaat qilishdan ko'ra tezroq ishlaydi. Bu holatga "Redis" yaxshi yechim beradi.
5. Redis: Too many connections. Ba'zida Redis'ga request'lar ko'payib ketishi natijasida Redis ham javob berolmay qoladi. Bu muammo o'zimda ham uchragandi. Ammo muammoni hal qilolmagandim. Bunga yechimlaridan biri "Pooling" qilish. Default holatda Redis'ga berilgan request bitta connection ochadi. Ishini to'xtatgandan keyin u connection yopiladi. Pooling'da esa bitta connection doimiy ochiq holda bo'ladi.
6. Redis: Slow query. Aslida keshlar bazaga beriladigan query'larni vaqtini kamaytirish uchun qilinadi. Ammo yuqoridagi holatdan keyin Redis'dan javob olish ham sekinlashib qoladi. (qolibdi) Bunga yechim sifatida Redis'ni "cluster"larga bo'lish orqali yechim topsa bo'ladi. Default holatda Redis 0 indeksli bazasini ishlatadi. Qo'shimcha unda yana 16 ta (0 bilan birga) baza bor. Bu holatda qolgan bazalarni ham ishlatish bu muammoga yechim bo'ladi.
7. PHP: Slow Request. Endi PHP scriptni o'zini javob berishiga kelsak. PHP intepreted til bo'lganligi uchun, run qilganimizda kod Parsing qismida undagi error'lar tekshiriladi. Agar xatolar chiqmasa, keyin OpCode'ga ya'ni operatsion kodga o'giriladi. Keyin Zend Engine uni haqiqiy komputer tushunadigan tilda run qiladi. Har safar shu jarayon takrorlanadi. "OpCache" orqali esa, Zend Engine qismigacha bo'lgan qismlarni olib tashlasak bo'ladi. Ya'ni bir marta ishga tushirilgan script endi xotiradan olinadi. Yana bunga yordamchi sifatida "JIT (Just in time)"ni qo'llashimiz mumkin. Bu bizga Zend Engine ishini ham olib tashlashga yordam beradi. Bitta run qilingan script birinchi marta hamma bosqichdan o'tadi va keyingi holatdan faqatgina xotiradan ishga tushadi.
8. Server: Too many connection. Tasavvur qiling xonaga 50 ta odam sig'adi. 51-odam kelib qolsa, bittasi bo'shashini kutadi. Natijada kutish ham bir necha soniya vaqt olib qoladi. Bu muammoga esa, PHP'ni asinxron sifatida ishlatish yordam beradi. "PHP Swoole" yordamida usha kutib turgan 51-odamni ham kirg'izsak bo'ladi. Ya'ni 51-requestga ham javob beradi.
Xullas, yuqoridagi amallarni qilish loyihani highload'da ham ishlab berishini ta'minlab beradi. Tajribadan o'tgan narsalari asosida gapirilgan ma'lumotlarni tushunganim bo'yicha yozdim. Rasmlarni quyida topishingiz mumkin: https://t.me/UzGeeksCommunity/483
2. Database: Slow queries. Bazaga ko'p murojat qilish va natijada loyihani sekinlashtirish doimiy muammolardan. Indekslash esa bunga yaxshi yechim bera oladi. Bazadagi ma'lumotlarni indekslash orqali slow query'larni ishlashini tezlashtiramiz.
3. Database: Indexing cons. Indekslashni minus tomonlaridan biri, "insert, update, delete" uchun query'larni sekinlashib qolishi. Bu muammoga bazani ikkitaga bo'lish orqali yechim beriladi, ya'ni "DB Replication". Bitta asosiy baza - "insert, update, delete" uchun, ikkinchi baza asosiy bazani ko'chirmasi sifatida "select" uchun ishlatilinadi. Ikkinchi baza asosiy bazadan ma'lumotlarni o'ziga sync qilib turadi.
4. Database: Caching. Ba'zi natijasi o'zgarmas query'larni keshlash bazaga ortiqcha request'ni oldini oladi. Kesh tizimi bazaga murojaat qilishdan ko'ra tezroq ishlaydi. Bu holatga "Redis" yaxshi yechim beradi.
5. Redis: Too many connections. Ba'zida Redis'ga request'lar ko'payib ketishi natijasida Redis ham javob berolmay qoladi. Bu muammo o'zimda ham uchragandi. Ammo muammoni hal qilolmagandim. Bunga yechimlaridan biri "Pooling" qilish. Default holatda Redis'ga berilgan request bitta connection ochadi. Ishini to'xtatgandan keyin u connection yopiladi. Pooling'da esa bitta connection doimiy ochiq holda bo'ladi.
6. Redis: Slow query. Aslida keshlar bazaga beriladigan query'larni vaqtini kamaytirish uchun qilinadi. Ammo yuqoridagi holatdan keyin Redis'dan javob olish ham sekinlashib qoladi. (qolibdi) Bunga yechim sifatida Redis'ni "cluster"larga bo'lish orqali yechim topsa bo'ladi. Default holatda Redis 0 indeksli bazasini ishlatadi. Qo'shimcha unda yana 16 ta (0 bilan birga) baza bor. Bu holatda qolgan bazalarni ham ishlatish bu muammoga yechim bo'ladi.
7. PHP: Slow Request. Endi PHP scriptni o'zini javob berishiga kelsak. PHP intepreted til bo'lganligi uchun, run qilganimizda kod Parsing qismida undagi error'lar tekshiriladi. Agar xatolar chiqmasa, keyin OpCode'ga ya'ni operatsion kodga o'giriladi. Keyin Zend Engine uni haqiqiy komputer tushunadigan tilda run qiladi. Har safar shu jarayon takrorlanadi. "OpCache" orqali esa, Zend Engine qismigacha bo'lgan qismlarni olib tashlasak bo'ladi. Ya'ni bir marta ishga tushirilgan script endi xotiradan olinadi. Yana bunga yordamchi sifatida "JIT (Just in time)"ni qo'llashimiz mumkin. Bu bizga Zend Engine ishini ham olib tashlashga yordam beradi. Bitta run qilingan script birinchi marta hamma bosqichdan o'tadi va keyingi holatdan faqatgina xotiradan ishga tushadi.
8. Server: Too many connection. Tasavvur qiling xonaga 50 ta odam sig'adi. 51-odam kelib qolsa, bittasi bo'shashini kutadi. Natijada kutish ham bir necha soniya vaqt olib qoladi. Bu muammoga esa, PHP'ni asinxron sifatida ishlatish yordam beradi. "PHP Swoole" yordamida usha kutib turgan 51-odamni ham kirg'izsak bo'ladi. Ya'ni 51-requestga ham javob beradi.
Xullas, yuqoridagi amallarni qilish loyihani highload'da ham ishlab berishini ta'minlab beradi. Tajribadan o'tgan narsalari asosida gapirilgan ma'lumotlarni tushunganim bo'yicha yozdim. Rasmlarni quyida topishingiz mumkin: https://t.me/UzGeeksCommunity/483
👍1