AzizDev | Dashturlash
118 subscribers
59 photos
1 video
1 file
75 links
🧬 Young Lord of Code
👨‍💻 Backend Engineer from the Future
⚙️ Laravel | Scaling | Microservices
🐲 Dragon-born ideas & legendary code
📡 Connect: @Isroilov_Azizbek
Download Telegram
Siz "Taxtlar o'yini"dan ~4 baravar ko'proq tokenlardan foydalangansiz

Claude ni xam o'z olami bor kesatishni biladi 😄
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6
Laravel Cloud’da yangi $5/month tarif chiqmoqda ☁️🔥

Taylor Otwell aytishicha, Laravel Cloud har bir Laravel developer uchun hamyonbop bo‘lishi kerak.

Hozirgacha tizim asosan “pay-as-you-go” modelida ishlardi:
qancha compute ishlatsaңыз — shuncha to‘laysiz 💸

Endi esa juda qiziq feature’lar kelmoqda:

• $5/month plan
• Spend caps (xarajat limiti)
• True scale-to-zero
• Auto-scaling managed queues
• Kuchliroq bot protection

Eng qiziq joyi — scale-to-zero 🚀

Agar app ishlamay turgan bo‘lsa:
— app “uxlaydi”
— request kelsa millisekundlarda uyg‘onadi
— foydalanuvchi deyarli sezmaydi
Natija:
ancha kam server xarajati 💰

Bu ayniqsa:
• pet project
• startup MVP
• portfolio
• kichik SaaS
uchun juda foydali bo‘lishi mumkin 🔥

Laravel ecosystem asta-sekin full platform’ga aylanib boryapti 👀
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9
🔥 PHP compiled til bo‘lsa nima bo‘lardi?
Masalan Go’da:
go build main.go
./main

Binary file chiqadi 🚀
Endi tasavvur qiling PHP’da ham shunday bo‘lsa 😳
Oddiy PHP:
php index.php

Compiled PHP:
elephc index.php
./index

Ya’ni:
PHP kod → native binary 🔥
Hech qanday:
PHP interpreter
php-fpm
Zend Engine
kerak emas.
Foydasi:
⚡️ Juda tez ishlash
⚡️ Kam RAM ishlatish
⚡️ Single binary deploy
⚡️ Docker siz ham ishlatish mumkin
⚡️ Realtime systems uchun yaxshi
Hozir elephc degan experimental compiler shu narsani qilyapti 🚀
Hatto:
HTTP server
DOOM game renderer
ham PHP’da yozilib native binary bo‘lib ishlagan 🤯
PHP ecosystem uchun juda noodatiy loyiha.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍2
Albatta 🖥
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6👍2🔥1
O'zi bilan O'zi gaplashib oldi va o'zi o'zi uchun xato qilib xatosini o'zi tog'irladi va o'zi uchun menga tushuntirdi 😄
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4
🤖 Sun'iy intellekt ish o'rinlarini qisqartirmoqda

Standard Chartered banki minglab xodimini qisqartirdi. Meta esa 7,000 xodimini AI jamoalariga o'tkazdi. Korxonalarda AI endi mustaqil agentlarga aylanib bormoqda — bu esa global miqyosda ishchi o'rinlari tuzilmasini o'zgartirmoqda. WadesWatch
🤯4😢1
🛡 Laravel yangi security tool chiqardi — MOAT

MOAT GitHub repository va organization’larni security audit qiladi.

Tekshiradi:
• Dependabot
• Secret scanning
• Branch protection
• GitHub Actions security
• Supply-chain risklar

GitHub:
https://github.com/laravel/moat
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5🤯11
Qurbon Hayiti muborak bo‘lsin!
7
Yaxshi Punch bo'ldi 😄
😁6
🚀 Composer 2.10 chiqdi!

Yangi update ichida:
🛡 Malware filtering — zararli package’larni bloklaydi
⚙️ Insecure(abandoned/xavfli) package policy management
🤝 Aikido security integratsiyasi
🚀 Xavfsizlik tekshiruvlari tezlashgan

Test qilish:
composer self-update --preview

Link:
https://blog.packagist.com/composer-2-10-release/

#composer #news
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
📌 Laravel Tip
SQL dump faylni Seeder ga qo‘lda o‘tkazish shart emas.
DB::unprepared() yordamida SQL faylni to‘g‘ridan-to‘g‘ri ishga tushirishingiz mumkin.
Tez
Qulay
Katta ma'lumotlar uchun mos

Ayniqsa eski loyiha yoki migratsiya jarayonlarida juda foydali.

#tip #laravel
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
💡 Laravel tip

PHP xotirani avtomatik boshqaradi, lekin long-running processlarda (Queue, Command, Import) katta obyektlar xotirada keragidan ortiq qolishi mumkin.

Bunday holatda unset() yordamida xotirani ertaroq bo‘shatish mumkin.

unset() oddiy Controllerlarda deyarli kerak emas, lekin katta datasetlar bilan ishlaganda foydali bo‘ladi

#tip #laravel #php
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
📢 Microsoft va Zero-Day mojarosi

Security researcher Microsoft'ga bir nechta kritik Windows zaifliklarini topib berganini aytmoqda.

Uning da’vosiga ko‘ra:

• Bug bounty(mukofot) berilmagan
• Microsoft account'i yopilgan
• GitHub account'i bloklangan

Shundan so‘ng u ketma-ket Windows uchun bir nechta zero-day-larni public qilgan.

Eng xavotirli tomoni — ulardan ayrimlari real hujumlarda ishlatilgani haqida xabarlar mavjud.

Microsoft esa bu tarzdagi oshkor qilish foydalanuvchilarga xavf tug‘dirishini va yuridik choralar ko‘rilishi mumkinligini bildirgan.

💬 Bu voqea cybersecurity hamjamiyatida katta bahsga sabab bo‘lmoqda.

Bir tomonda — researcher'larning haq-huquqlari.
Ikkinchi tomonda — millionlab Windows foydalanuvchilarining xavfsizligi.

#news #cybersecurity
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Bugun Dushanba va 1-chi sana nimadur boshlashni ayni vaqti ekan : )
😁6
Sun'iy intellekt hali foyda keltiryaptimi?
Javob: Yo'q

link
👍5
🔥 phpredis vs predis— qaysi biri yaxshiroq?

Laravel loyihalarda Redis bilan ishlashda asosan 2 ta variant bor:
phpredis
predis

📌 phpredis
C tilida yozilgan PHP extension
Juda tez ishlaydi
Kamroq RAM ishlatadi
Production uchun tavsiya etiladi
Redis'ning yangi imkoniyatlarini tezroq qo‘llab-quvvatlaydi

📌 predis
Toza PHP kutubxonasi
O‘rnatish oson (composer require predis/predis)
Serverga extension o‘rnatish shart emas
Development va shared hosting uchun qulay

⚡️ Performance bo‘yicha:
phpredis deyarli barcha holatlarda predis'dan tezroq va kamroq resurs sarflaydi.

🎯 Xulosa:
Production server → phpredis
Shared hosting yoki extension o‘rnatib bo‘lmaydigan muhit → predis
Laravel loyihalarda imkon bo‘lsa phpredis ishlatishni tavsiya qilaman. 🚀
#php #laravel #redis #production
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥6
📦 Laravel 13.13 da yangi imkoniyat — Bus::bulk()
Endi minglab joblarni queue'ga yuborishda dispatch() ni qayta-qayta chaqirish shart emas.
Bus::bulk(
$users->map(fn ($user) => new ProcessUser($user))
);

Bus::bulk() joblarni queue va connection bo‘yicha guruhlab, bir martada yuboradi. Natijada kamroq so‘rov va tezroq dispatch.
Katta hajmdagi email, SMS, import va report joblari uchun foydali.
📖 Batafsil:
https://laravel.com/docs/13.x/queues#bulk-dispatching
#Laravel #PHP #Queue
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍1
Вентилятор Tarixi 😄

Men Вентилятор oldim va xonamga qoydim va uni uzoqroqga qoydim va uni ochirib yoqish juda azobli edi men borib ventilyatorni ochirib keyin joyimga otirishim kerak edi bu juda og'ir ish va men oyladim shuni avtomatlashtirsamchi deb va izlanib aqilliy r = розетка topdim va sotib oldim uning ilovasi bor ekan ochirib yoqasiz timerlari bor scheduler bor ekan juda qulay lekin telefonda qilish kerak ekan yana minus men yana komp da mazza qilib otirganimda telefonimni blokdan chiqarib wifi yoqib ilovaga kirib switch ni o'chirishim kerak edi bu juda azob edi men nima qildim osha qurilmani API si bor ekan oshani izlab topib ozimni telegram botimga ulab qoydim va endi bemalol kompyuterimdan o'chirib yoqa olaman xayot ancha yengillashdi ana endi qiz topsam boldi 😁

r = розетка qilganim r o'zgaruvchini qayerdadur ishlataman deb aqilliylik qilmoqchi edim ishlatmadim baribir 😄
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5👍1👏1
🚨 Queue dispatch qilishda yashirin muammo

Quyidagi kodni ko'rganmisiz?
DB::transaction(function () use ($userData) {
$user = User::create($userData);

SendWelcomeEmailJob::dispatch($user);
});

Hammasi to'g'ridek ko'rinadi.
Lekin queue worker juda tez ishlasa, job transaction commit bo'lishidan oldin ishga tushishi mumkin.

Natijada:
User::find($id);

null qaytaradi 😬
Chunki ma'lumot hali database'ga yozilib ulgurmagan bo'ladi.

Laravel'dagi yechim:
DB::transaction(function () use ($userData) {
$user = User::create($userData);

SendWelcomeEmailJob::dispatch($user)
->afterCommit();
});

Endi job faqat transaction muvaffaqiyatli yakunlangandan keyin queue'ga yuboriladi.

🎯 Qachon ishlatish kerak?
• Email yuborishda
• Notification jo'natishda
• Webhook dispatch qilishda
• Event publish qilishda
• Boshqa service'larga xabar yuborishda


Qisqasi, job database'dagi yangi ma'lumotga tayanadigan bo'lsa, afterCommit() ishlatishni unutmang.

Laravel'dagi eng underrated metodlardan biri 🔥

#laravel #tip #queue
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
🚨 Race Condition nima?

Tasavvur qiling, account'da 100 000 so'm bor.
Ikki xil request bir vaqtda keladi:

1-request:
- Balansni o'qidi: 100 000

2-request:
- Balansni o'qidi: 100 000

1-request:
- 80 000 yechdi
- Balans: 20 000

2-request:
- 80 000 yechdi
- Balans: 20 000

Natija:
Xar ikki request parallel ishladi va ikkisi xam balansni 100 000 deb oqidi
Foydalanuvchi 160 000 so'm ishlatdi,
lekin hisobida atigi 100 000 so'm bor edi 😬

Mana shu Race Condition.

Ko'pchilik transaction ishlatdim, demak xavfsiz deb o'ylaydi.
Lekin transaction har doim ham Race Condition'dan himoya qilmaydi.
Laravel'dagi yechimlardan biri:
DB::transaction(function () use ($walletId) {
$wallet = Wallet::where('id', $walletId)
->lockForUpdate()
->first();

// balans bilan ishlash
});

lockForUpdate() satrni lock qiladi va boshqa transaction'larni kutishga majbur qiladi.

Shu sababli moliyaviy tizimlar, bonuslar, ombor va to'lov sistemalarida lockForUpdate() juda muhim.

#laravel #tip #race_condition
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥1
Qarmoq,baliq va men

Men ora-orada saytlarga hujumcha qilib turaman va ko‘pchilik e’tiboriga olmaydigan narsa bor — rate limiting.Registerda yoki boshqa endpointlarga qo‘yishmaydi. 🫢 Aslida, loyihada iloji bo‘lsa, bo‘lmaydi deganda bitta global rate limit qo‘yib qo‘yish kerak barcha routelar uchun. Muhim routelar uchun esa alohida qilib qo‘yish kerak, masalan, register uchun OTP ketadigan bo‘lsa va hokazo.
Agar rate limiting yo‘qligini bilib qolsam qaysidur saytda, joyida Open Code Editor -> app.js -> parallel 10 ta request va kamida 10 ta process bilan, va cooked. 😬

Va ikki tomonlama(back + front) validatsiya ham juda muhim narsa.

Bugun shunchaki domain izladim. Menga yoqqan domain band ekan, qiziqib kirib register qildim. Portfolio joylasa bo‘lar ekan va portfolio uchun rasm yuklasa bo‘lar ekan. 😁
Loyiha toza PHP’da ekan va portfolio qo‘yganda rasm yukladim. Rasmni tanlashingiz bilan serverga ketar ekan, alohida endpointga, va yuklanadi ekan. Men qiziqdim, max nechi MB ekan deb.
UI’da cheklov qo‘yibdilar. Men Postman bilan qildim: headerdan cookie’ni oldim, CSRF tokenni formadan oldim va 142 ta 4.32 MB’lik rasm yukladim. Validatsiya yo‘q ekan. 😬
142 × 4.32 = 613.44 MB va men bu uchun shunchaki script yozib, avtomat 10–15 marta yoki undan ko‘proq qilsam, serverning xotirasini to‘ldirib qo‘yishim mumkin edi. Bu serverning qotishiga va o'chib qolishiga ham sabab bo‘lishi mumkin.

#security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10