Programming ∀
Open in Telegram
Ushbu kanalda IT va Dasturlashga aloqador mavzularda subyektiv fikrlarimni bayon qilaman.
Show more1 217
Subscribers
No data24 hours
-87 days
-3530 days
Posts Archive
1 217
Genialno 🙂
Man Q&A emasman lekin ko’pincha hamma narsadan bug topaman(O’zim qilgan ishlardan tashqari 🫠)
1 217
Putty, termiusdan foydalanib, sshga connect qilamizku linux serverlargan, shu paytda biror dasturni ishga tushirdik deylik, bajarib turibdi, shunda putty yoki termiusdan chiqib ketsak, ya'ni ssh connection uzilsa, nega running programma ham to'xtab qoladi, avtomat backgroundda ishlab turavermay
Mavzu demons and processes va SHELL mavzusiga borib taqaladi.
Avvalida Shellni ko'rib chiqamiz.
Shell - OS uchun eng boshlangich va minimal interface. Tassavur qiling siz Exel file ichidan ma'lumot qidirish uchun dastur qildingiz. Qidirish algorithmi qildingiz. Endi ushbu dasturingizdan userlar foydalanishi uchun interface kerak bo'ladi. Siz uni turlicha ko'rinishda qilishingiz mumkin. Ammo muhim joyi user Exel ichidan nimadur qidirib topishi uchun input qila olishi va javobni qandaydur ko'rinishda olishi kerak. Bu narsa I/O deyiladi. Shell ham yuqoridagi search algorithm interface kabi bir interface aynan OSdan foydalanish uchun.
Endi SSH masalasi
SSH - Secure Shell va u Secure Shell Protocolida ishlaydi.
Yani biz ushbu texnalogiya orqali tarmoqdan boshqa shellga xafsiz ulanib ishlay olamiz.
Endi bizda process degan tushuncha mavjud. Process OSdagi barcha jarayonlar yanayam sodda aytsak ishlab turgan jarayonlar bu dasturlar :)
Processlar haqida qisqacha aytsak har bir processning hayoti mavjud :) Shu bilan birgalikda har bir processning holatlari mavjud. Processlarda ham tug'ulish va o'lish ishlash kutish kabi holatlar mavjud. Qisqacha o'qish uchun
Yana qoshimcha barcha processlar otasi va bolalari mavjud :) Parent or child process deyiladi :) Undan tashqari processlarning tabaqalari yoki prioritetlari ham mavjud :)
Shell orqali biz biror dasturni ishga tushirganimizda OSda yangi process(lar) paydo bo'ladi. Endi qiziq tomoni biz dasturni shell orqali run qilganimiz uchun biz run qilgan processning parrent processi shell bo'ladi.
Processlarning qiziq tomoni otasi o'lsa bolalari ham o'lishida(Normal holatda shunday va istesnolar mavjud). Shu sabab bizning shell dasturimiz o'chganida uning bolalari va bolalarnining bolalari o'chishga to'g'ri keladi.
Biz SSH orqali ulganimizda yangi shell session ochiladi va uning ichida biz run qilgan processlar ishga tushadi. Yopilganida esa parent process yani shell ochgani sabab bolalari ham o'chadi. (Ctrl + C orqali kill qilish ham o'ldirish :) )
Deamon mavzusi qoldi.
OS ishga tushganida eng avval ishga tushadigan dasturlardan biri bu deamon xisoblanadi. Deamon sodda qilib aytganda aynan background processlarni ishga tushirish uchun o'ylab topilgan dastur va bu datur user interfacedan alohida.
Biz deamon orqali processlarni ishga tushiradigan bo'lsak aynan shellga bog'liq bo'lmaydi shu bilan birga bu processlar userga to'g'ridan tog'ri mavhum alohida joyda ishlab turadi(Ammo bazi deamon processlarni ham userlar manage qilishi mumkin ammo bu alohida mavzu).
1 217
Nega FPdan buncha ko'p aniq ma'lumotlar ? Kitoblar qo'llamalar pure functional tillar like haskell :) Bunga matematic programmerlar contributori sababmi ?
PS: Xamkasblar propagandasi qurboniman :(
1 217
IDE extensionlar yasash ham ajoyib biznes. Masalan manga Database monitoring extension ko'p kerak bo'ladi ))
Freelance qilishdan ko'ra ancha afzalroq daromat qilsangiz bo'ladi foydali extensionlar qilib :)
Masalan Turli driverlar ustiga UI management systemlar qilsangiz ham foydali va osonroq ))
Quick reference: https://blog.jetbrains.com/webstorm/2021/09/building-a-plugin-for-webstorm-part-1/
1 217
Bu IDElarni ishlatishga 300+ IQ kerakku. Qanday ishlatasizlar ))) Juda kop windowlar yana birnasalar 🤯
1 217
Shu tablar sabab 64 RAM qilgan edim 🥲 Powerfull PC yegishga sabablardan biri tablar edi. Natija gamming bo’lib qoldi 😁🥹
1 217
Repost from Jahongirmirzo
Bugun o'zimga yangi brauser kashf qildim, ARC browser, sizda ham ish vaqti brauser tablariz "millionta" bo'lib ketsa sizga ham maslahat beraman shu browserni.
Tablarni ajoyib yo'llar bilan boshqarsa bo'larkan.
Hozircha ARC browser beta holatda va "invite only" izohda o'zimni invitationnimni qoldiraman kirib sinab ko'rsangiz bo'ladi.
Aytgacha hozircha u brauser faqat "mac"illatadiganlar uchun ekan 😝
@muhandisona - Haqiqiy muhandis bo'lamiz
1 217
Raft Algorithm haqida eshitganmisiz ? Consensisty mavsusiga bag'ishlangan distrubutive systemlardagi man ko'rgan ajoyib yechimlardan biri shu )). K8S da etcd degan DB ishlatilgan edi. Barcha k8s configlar cluster metadata configlar vaxakazo datalar hammasi aynan etcd DB da turadi. ETCD hight perfomanced distrubutive key value database. Eng so'ngi synchronizationi olishga va doyim synchronization qilishga katta potensiali javob bera oladi )) Buning bunday ishlashiga Raft algorithmi eng muhim asos.
Tassavur qiling K8S da multi master cluster qilsangiz bo'ladi.
Limitlar
Bitta nodeda 110 podsdan ko'p ishga tushirsa bo'ladi.
5000+ Node cover qila oladi(Taxminan shuncha machine deb tassavur qilishingiz mumkin soddaroq aytsa).
Umumiy clusterda 150+k podlar bo'lishi mumkin
Umumiy clusterda 300+k contiainerlar bo'lishi mumkin.
Shunday umumiy tizimning infrasturcture configlari etcd DB da saqlanadi va manage qilinadi eng qizig'i ushbu DB RAFT aglrothmi asosida. Yana ham qizig'i ushbu algorithm oddiy research peper yani kimningdur ilmiy ishi bo'lgan :)
1 217
IBM IT idusturyga katta contribute qilgan kompaniyalardan biri )) Ohirgi yillarda Ayan AIX systemni ham ancha piar qilyabti. Maga yoqgan tomoni AIX docs ancha zor yozilgan ekan )). Linuxda context tushunish birmucha murakkabroq. Academic topics juda kop )).
Yuqoridagi rasmda program execution modelni ko'ryabsiz IBM buni juda sodda izohlagan ekan. Linuxda esa bu mavzuni tushunib yetgunimcha va ajrata oladigan darajaga kelgunimcha ancha narsalar o'qishga to'g'ri kelgan edi )))
IBM IT ga aloqador mavzularni ko'plarida free content qilgan juda ko'plab. Begineerlar uchun ancha sodda qilingan ayniqsa ))/
1 217
2021-yilda juda ko'pchilik IT Jobs bozorida elak ko'tarilishi haqida aytgan edi. Shu jumladan manam. Chunki o'shanda hamma dasturlashga aloqador mavzularda o'zlariga qiziq nimadurlani so'rashgan edi. Kunda kamida 3-4 ta shu mavzuda xat kelar edi. Social networklardan.
Endi elak ko'tarilishni boshladi. Ayniqsa bazi keg tarqalgan yo'nalishlarda.
Qisqa qilib aytganda elakda qolganlar yaxshi koryerani davom qiladilar.
Shu mavzu yuzasidan fikr va tavsiyalarim.
1. Kundalik intensiv learning and practice.
2. Fundamental bilimlarni mustaxkamlash.
3. Pet projectlar.
4. Chet tili.
5. Volunteering & Contributing (Ko'ngilli sifatida nimadurlarga qo'shilish)
6. Networking & Self marketing ))) (Meyorida bo'lsa foydali)
Yuqoridagilarni boshidagi to'rt punkti juda ham muhim va yaxshi focus qilish kerak.
1 217
Modern software applications shouldn't rely on databases fully.
O'zbekchasi bunchalik jarangdor emas edi oma 😁
1 217
Nginxda yana bir usefull narsa bu caching.
Shu paytgacha 2 ta projectga getway level caching qilib ko'rdim.
1-3 sekundlik requestlar 200ms ga tushib qolgani mazza qildirvorgan edi. Mani holatimda requestlar juda kop bo'lgani va kam updatelar bo'lgani uchun cachemiss parametrlarini birmuncha balandroq qo'ygan edim )).
1 217
Nginxda JWT module ham bor aytgancha )). Negadur kopchilik getwayda auth qilish masalasida expriement qilishni ham hohlamaydigan darajada oylamas ekan )).
http://nginx.org/en/docs/http/ngx_http_auth_jwt_module.html
Ha aytgancha Hayit Ayyomi muborek bo'lsin 🥳
