#laravel #tutorial #best_practice #redis
Assalomu Alaykum 👋
Laravel x Redis (part 1) ✅
Bu yo'l bilan professional dasturchi bo'ling 📈
https://youtu.be/42o5mA9oVB4?si=0MEndiW1ekS28CKP
Assalomu Alaykum 👋
Laravel x Redis (part 1) ✅
Bu yo'l bilan professional dasturchi bo'ling 📈
https://youtu.be/42o5mA9oVB4?si=0MEndiW1ekS28CKP
YouTube
Laravel x Redis: Nima uchun kerak va qanday o‘rnatiladi? (Part 1) #laravel #php #bestpractice #redis
Laravel x Redis: Nima uchun kerak va qanday o‘rnatiladi? (Part 1)
Notion: https://rain-screen-9aa.notion.site/Laravel-x-Redis-21f7c6c38f704af5a48332ed89db4253
Telegram kanal: https://t.me/azizdevfull
Notion: https://rain-screen-9aa.notion.site/Laravel-x-Redis-21f7c6c38f704af5a48332ed89db4253
Telegram kanal: https://t.me/azizdevfull
🔥3👍1👏1
#laravel #tutorial #best_practice #redis
Assalomu Alaykum 👋
Laravel x Redis (part 2) ✅
Bu yo'l bilan professional dasturchi bo'ling 📈
https://youtu.be/gd-bvDPygTU?si=EaNse_cbQoT7TGrA
Assalomu Alaykum 👋
Laravel x Redis (part 2) ✅
Bu yo'l bilan professional dasturchi bo'ling 📈
https://youtu.be/gd-bvDPygTU?si=EaNse_cbQoT7TGrA
YouTube
Laravel x Redis: Nima uchun kerak va qanday ishlatiladi? (Part 2) #laravel #php #bestpractice #redis
Laravel x Redis: Nima uchun kerak va qanday ishlatiladi? (Part 2)
Github Repo: https://github.com/azizdevfull/redis-tuto
Telegram kanal: https://t.me/azizdevfull
Github Repo: https://github.com/azizdevfull/redis-tuto
Telegram kanal: https://t.me/azizdevfull
🔥5👍4
📌 Eloquent'da when() funksiyasidan foydalanish
Ko‘pchilik if bloklaridan foydalansa ham, when() orqali kodni ancha ixcham qilish mumkin!
⚡️ Misol:
✅ Agar request da role bo‘lsa, where() qo‘llanadi.
✅ Agar bo‘lmasa, oddiy User::get() ishlaydi.
🔥 Laravel kodini ixcham va chiroyli qilish uchun when() dan foydalaning!
#Laravel #when #Performance #Optimization #BestPractice
Ko‘pchilik if bloklaridan foydalansa ham, when() orqali kodni ancha ixcham qilish mumkin!
⚡️ Misol:
$users = User::when(request('role'), function ($query, $role) {
return $query->where('role', $role);
})->get();✅ Agar request da role bo‘lsa, where() qo‘llanadi.
✅ Agar bo‘lmasa, oddiy User::get() ishlaydi.
🔥 Laravel kodini ixcham va chiroyli qilish uchun when() dan foydalaning!
#Laravel #when #Performance #Optimization #BestPractice
🔥4👍2👏1
⚡️ Laravel + Node.js + Redis – Real-time chat nechta foydalanuvchini ko‘tara oladi?
Men yaqinda Laravel + Node.js + Redis yordamida real-time chat yaratdim. Ammo bir savol tug‘iladi: bu tizim bir vaqtning o‘zida nechta foydalanuvchini ko‘tara oladi? 🤔
🔍 Texnologiyalar:
✅ Laravel – Backend API
✅ Node.js + Socket.io – Real-time aloqani ta’minlash
✅ Redis – WebSocket xabarlarini tez uzatish
💡 Chat qanday ishlaydi?
1) Laravel API orqali user autentifikatsiya qiladi
2) Node.js + Socket.io chat xabarlarini Redis pub/sub orqali boshqaradi
3) Redis – chat serverlar o‘rtasida tezkor ulanishni ta’minlaydi
📊 Yuklama testi natijalari (taxminiy):
🚀 10,000 ta parallel user hech qanday kechikishsiz ishlashi mumkin
🚀 50,000+ user bilan Redis hali ham stabil ishlashi mumkin
🚀 100,000+ user da WebSocket ulanishlar soni oshib ketib, Redis Cluster + Load Balancer kerak bo‘lishi mumkin
🔧 Yaxshiroq ishlashi uchun nima qilish kerak?
1️⃣ Redis Cluster – katta hajmli ulanishlarni boshqarish
2️⃣ Horizontally Scaling (Ko‘paytirish) – bir nechta Node.js serverlarini ishlatish
3️⃣ Load Balancer – Traffikni teng taqsimlash
📌 Xulosa:
Oddiy Redis konfiguratsiyasi bilan 50K user hech qanday muammosiz ishlaydi. Katta miqdordagi foydalanuvchilar uchun Redis Cluster + Load Balancer qo‘shish kerak.
Men yaqinda Laravel + Node.js + Redis yordamida real-time chat yaratdim. Ammo bir savol tug‘iladi: bu tizim bir vaqtning o‘zida nechta foydalanuvchini ko‘tara oladi? 🤔
🔍 Texnologiyalar:
✅ Laravel – Backend API
✅ Node.js + Socket.io – Real-time aloqani ta’minlash
✅ Redis – WebSocket xabarlarini tez uzatish
💡 Chat qanday ishlaydi?
1) Laravel API orqali user autentifikatsiya qiladi
2) Node.js + Socket.io chat xabarlarini Redis pub/sub orqali boshqaradi
3) Redis – chat serverlar o‘rtasida tezkor ulanishni ta’minlaydi
📊 Yuklama testi natijalari (taxminiy):
🚀 10,000 ta parallel user hech qanday kechikishsiz ishlashi mumkin
🚀 50,000+ user bilan Redis hali ham stabil ishlashi mumkin
🚀 100,000+ user da WebSocket ulanishlar soni oshib ketib, Redis Cluster + Load Balancer kerak bo‘lishi mumkin
🔧 Yaxshiroq ishlashi uchun nima qilish kerak?
1️⃣ Redis Cluster – katta hajmli ulanishlarni boshqarish
2️⃣ Horizontally Scaling (Ko‘paytirish) – bir nechta Node.js serverlarini ishlatish
3️⃣ Load Balancer – Traffikni teng taqsimlash
📌 Xulosa:
Oddiy Redis konfiguratsiyasi bilan 50K user hech qanday muammosiz ishlaydi. Katta miqdordagi foydalanuvchilar uchun Redis Cluster + Load Balancer qo‘shish kerak.
🔥4👍3
🔍 Vite.js qanday o‘qiladi?
✅ To‘g‘ri variant: "Vit"
❌ Noto‘g‘ri variantlar:
— Vayt
— Vitey
— Vitya
— Vitamin
⚠️ Agar siz ham "Vayt" deb o‘ylagan bo‘lsangiz, iltimos:
💡 Eslatma: Vite fransuzcha "vite" (tez) so‘zidan kelib chiqqan bo‘lib, "Vit" deb talaffuz qilinadi. 🚀
#Vite #Frontend #JS #TalaffuzMasalasi
✅ To‘g‘ri variant: "Vit"
❌ Noto‘g‘ri variantlar:
— Vayt
— Vitey
— Vitya
— Vitamin
⚠️ Agar siz ham "Vayt" deb o‘ylagan bo‘lsangiz, iltimos:
npm uninstall vite && sudo apt install fonetika
💡 Eslatma: Vite fransuzcha "vite" (tez) so‘zidan kelib chiqqan bo‘lib, "Vit" deb talaffuz qilinadi. 🚀
#Vite #Frontend #JS #TalaffuzMasalasi
👍3😁2😱1
💻 Hosting vs VPS – Qaysi biri kerak?
✅ Hosting tanlang, agar:
🔹 Saytingiz kichik va trafik kam bo‘lsa
🔹 Texnik ishlarga vaqt sarflamoqchi bo‘lmasangiz
🔹 WordPress yoki oddiy blog yuritmoqchi bo‘lsangiz
🚀 VPS tanlang, agar:
🔹 Kuchli backend (Laravel, Node.js, e.t.c) ishlatsangiz
🔹 Trafik ko‘p bo‘lsa va serverni o‘zingiz boshqarmoqchi bo‘lsangiz
🔹 O‘ziga xos konfiguratsiya kerak bo‘lsa (custom software, AI, mikroservislar)
#VPS #Hosting #Server #Laravel #WebDevelopment #DevOps #Backend
✅ Hosting tanlang, agar:
🔹 Saytingiz kichik va trafik kam bo‘lsa
🔹 Texnik ishlarga vaqt sarflamoqchi bo‘lmasangiz
🔹 WordPress yoki oddiy blog yuritmoqchi bo‘lsangiz
🚀 VPS tanlang, agar:
🔹 Kuchli backend (Laravel, Node.js, e.t.c) ishlatsangiz
🔹 Trafik ko‘p bo‘lsa va serverni o‘zingiz boshqarmoqchi bo‘lsangiz
🔹 O‘ziga xos konfiguratsiya kerak bo‘lsa (custom software, AI, mikroservislar)
#VPS #Hosting #Server #Laravel #WebDevelopment #DevOps #Backend
🔥4👍2
🔷 Laravelda Multiple Database – Nega ishlatish kerak?
Ko‘pchilik uchun bitta database kifoya qiladi, lekin ayrim holatlarda bir nechta database ishlatish shart:
✅ 1. Ma’lumotlarni ajratish – Masalan, asosiy database user ma’lumotlarini saqlasa, log va statistikalar boshqa database da bo‘lsa, asosiy bazaga yuk tushmaydi.
✅ 2. Yangi va eski tizimlarni bog‘lash – Agar eski database bilan ishlashingiz kerak bo‘lsa, uni yangi loyihaga qo‘shish osonlashadi.
✅ 3. Microservices arxitekturasi – Har bir xizmat (auth, payments, orders) o‘z bazasiga ega bo‘lsa, tizim mustahkam va kengayuvchan bo‘ladi.
✅ 4. Turli xildagi database turlari – Masalan, asosiy ma’lumotlar MySQL da, analytics ma’lumotlari esa MongoDB da saqlanishi mumkin.
📌 Laravelda buni qanday ishlatish kerak?
🔹 config/database.php faylida qo‘shimcha connection qo‘shing:
🔹 Kerakli modelga connection belgilang:
🔹 Query Builder orqali ishlating:
❌ Noto‘g‘ri yondashuv:
🚫 Har doim DB::connection() bilan ishlash – kodni chalkashtirib yuboradi.
🚫 Transactionlar har doim bitta database ichida bo‘lishi kerak, aks holda ishlamaydi!
#Laravel #BestPractice #database
Ko‘pchilik uchun bitta database kifoya qiladi, lekin ayrim holatlarda bir nechta database ishlatish shart:
✅ 1. Ma’lumotlarni ajratish – Masalan, asosiy database user ma’lumotlarini saqlasa, log va statistikalar boshqa database da bo‘lsa, asosiy bazaga yuk tushmaydi.
✅ 2. Yangi va eski tizimlarni bog‘lash – Agar eski database bilan ishlashingiz kerak bo‘lsa, uni yangi loyihaga qo‘shish osonlashadi.
✅ 3. Microservices arxitekturasi – Har bir xizmat (auth, payments, orders) o‘z bazasiga ega bo‘lsa, tizim mustahkam va kengayuvchan bo‘ladi.
✅ 4. Turli xildagi database turlari – Masalan, asosiy ma’lumotlar MySQL da, analytics ma’lumotlari esa MongoDB da saqlanishi mumkin.
📌 Laravelda buni qanday ishlatish kerak?
🔹 config/database.php faylida qo‘shimcha connection qo‘shing:
'connections' => [
'logs_db' => [
'driver' => 'mysql',
'host' => env('LOGS_DB_HOST'),
'database' => env('LOGS_DB_DATABASE'),
],
],
🔹 Kerakli modelga connection belgilang:
class Log extends Model
{
protected $connection = 'logs_db';
}
🔹 Query Builder orqali ishlating:
DB::connection('logs_db')->table('logs')->insert([...]);❌ Noto‘g‘ri yondashuv:
🚫 Har doim DB::connection() bilan ishlash – kodni chalkashtirib yuboradi.
🚫 Transactionlar har doim bitta database ichida bo‘lishi kerak, aks holda ishlamaydi!
#Laravel #BestPractice #database
🔥2👍1
Hamma o‘zini boshqachaman deb o‘ylaydi. Agar shunday bo‘lsa, men boshqalar shunday o‘ylashini bilaman... va shu sababli men HAQIQATDAN ham boshqachaman! 🤯🧠✨
Agar siz ham shunday o‘ylagan bo‘lsangiz... men allaqachon buni bilardim! 😃
Agar siz ham shunday o‘ylagan bo‘lsangiz... men allaqachon buni bilardim! 😃
😁7🤯2
Мен жеңілдім, себебі әлсізбін, ештеңе істеген жоқпын, істей алмадым.
😢4
🐰 RabbitMQ nima uchun kerak?
Kodda “qimmat” vazifalarni (masalan: email, to‘lov, bildirishnoma) background-ga o‘tkazish kerak bo‘lsa — RabbitMQ yordam beradi.
✅ Message Broker – service-lar o‘zaro xabar almashadi
✅ Queue – navbatga qo‘yadi, navbati bilan ishlaydi
✅ Reliable – xabar yo‘qolmaydi, qayta yuboriladi
🎯 Katta tizimlar uchun Redis emas — aynan RabbitMQ kerak!
#Laravel #BestPractice #rabbitmq
Kodda “qimmat” vazifalarni (masalan: email, to‘lov, bildirishnoma) background-ga o‘tkazish kerak bo‘lsa — RabbitMQ yordam beradi.
✅ Message Broker – service-lar o‘zaro xabar almashadi
✅ Queue – navbatga qo‘yadi, navbati bilan ishlaydi
✅ Reliable – xabar yo‘qolmaydi, qayta yuboriladi
🎯 Katta tizimlar uchun Redis emas — aynan RabbitMQ kerak!
#Laravel #BestPractice #rabbitmq
🔥4👍1👏1
🎯 Why use DTO (Data Transfer Object)?
Ko‘pchilik Requestni to‘g‘ridan-to‘g‘ri modelga uzatadi:
Bu kichik loyihada ishlaydi. Lekin loyihangiz o‘sgan sayin validation, authorization, transformatsiya, mapping — hammasi Controllerda aralashib ketadi.
🔄 DTO yordamida esa:
1) request'dan faqat kerakli ma'lumot ajratiladi
2) typelar aniq bo‘ladi (misol: string $email, Carbon $birthday)
3) Service yoki Action klasslarga toza data uzatiladi
📦 DTO — kod arxitekturasini modular va testga qulay qiladi.
Controller faqat data qabul qiluvchi, service esa ish bajaruvchi bo‘ladi.
#Laravel #BestPractice #CleanCode
Ko‘pchilik Requestni to‘g‘ridan-to‘g‘ri modelga uzatadi:
User::create($request->validated());
Bu kichik loyihada ishlaydi. Lekin loyihangiz o‘sgan sayin validation, authorization, transformatsiya, mapping — hammasi Controllerda aralashib ketadi.
🔄 DTO yordamida esa:
1) request'dan faqat kerakli ma'lumot ajratiladi
2) typelar aniq bo‘ladi (misol: string $email, Carbon $birthday)
3) Service yoki Action klasslarga toza data uzatiladi
$userDto = new CreateUserDTO(
name: $request->name,
email: $request->email,
birthday: Carbon::parse($request->birthday)
);
$this->userService->create($userDto);
📦 DTO — kod arxitekturasini modular va testga qulay qiladi.
Controller faqat data qabul qiluvchi, service esa ish bajaruvchi bo‘ladi.
#Laravel #BestPractice #CleanCode
👍4🔥3
#laravel #tutorial #best_practice #api_versioning
Assalomu Alaykum 👋
Laravel API Versioning ✅
Bu yo'l bilan professional dasturchi bo'ling 📈
https://youtu.be/FCwLE1z_RAY?si=Vip7comLNRPAlPxk
Assalomu Alaykum 👋
Laravel API Versioning ✅
Bu yo'l bilan professional dasturchi bo'ling 📈
https://youtu.be/FCwLE1z_RAY?si=Vip7comLNRPAlPxk
YouTube
Laravel API Versioning #laravel #php #bestpractice #azizdev
Laravel API Versioning - Best Practice
Github Repo: https://github.com/azizdevfull/api-versioning
Telegram kanal: https://t.me/azizdevfull
Github Repo: https://github.com/azizdevfull/api-versioning
Telegram kanal: https://t.me/azizdevfull
🔥4
#laravel #tutorial #best_practice #db #transaction
Assalomu Alaykum 👋
Laravel DB Transaction ✅
Bu yo'l bilan professional dasturchi bo'ling 📈
https://youtu.be/p_VloJETnV0?si=r1QzdfnrEW2E1ZHC
Assalomu Alaykum 👋
Laravel DB Transaction ✅
Bu yo'l bilan professional dasturchi bo'ling 📈
https://youtu.be/p_VloJETnV0?si=r1QzdfnrEW2E1ZHC
YouTube
Laravel DB Transaction #laravel #php #bestpractice #azizdev
Laravel DB transaction - Best Practice
Github Repo: https://github.com/azizdevfull/db-transaction.git
Telegram kanal: https://t.me/azizdevfull
Github Repo: https://github.com/azizdevfull/db-transaction.git
Telegram kanal: https://t.me/azizdevfull
🔥5
https://youtube.com/shorts/fvUGM7JlFt4?si=8xCoZSXXMePdGPEI
✨ Men o‘zim haqimda kam gapiraman,
📽 ammo bu videoda Azizdevning qanday paydo bo‘lgani,
🌱 uning o‘sishi va yo‘l boshlashi haqida barcha haqiqatlar mavjud.
#Azizdev #Birth #History
✨ Men o‘zim haqimda kam gapiraman,
📽 ammo bu videoda Azizdevning qanday paydo bo‘lgani,
🌱 uning o‘sishi va yo‘l boshlashi haqida barcha haqiqatlar mavjud.
#Azizdev #Birth #History
YouTube
Men haqimda #aboutme #survivor #friends #azizdev #birthofdragon
“Boshida ko‘chirganman. Oxirida birinchi bo‘ldim.”IT Akademiyada o‘qishni boshlaganimda, sinfdoshim bilan birga yaxshi ketayotgan edik. HTML, CSS, JavaScript...
🔥4👍1🤯1
Assalomu Alaykum, barchaga!
Xudo xohlasa, ertaga 1 oylik harbiy xizmatga yo‘l olaman.
Lekin yaqinda yangilik chiqdi — endi 1 oylik emas, 3 oylik harbiy xizmat bo‘lib qolarkan. Iyul yoki sentabrdan kuchga kiradi deyishdi, shuning uchun imkon borida erta borishga qaror qildim.
Barcha duolaringizni kutaman!
Tez orada sog‘-salomat qaytaman, silar bilan — Oddiy askar Azizbek 💪🇺🇿
P.S. Sizlarga ham maslahat — imkoniyat bo‘lsa, 1 oylik bo‘lgan paytda borib oling 🙂
Xudo xohlasa, ertaga 1 oylik harbiy xizmatga yo‘l olaman.
Lekin yaqinda yangilik chiqdi — endi 1 oylik emas, 3 oylik harbiy xizmat bo‘lib qolarkan. Iyul yoki sentabrdan kuchga kiradi deyishdi, shuning uchun imkon borida erta borishga qaror qildim.
Barcha duolaringizni kutaman!
Tez orada sog‘-salomat qaytaman, silar bilan — Oddiy askar Azizbek 💪🇺🇿
P.S. Sizlarga ham maslahat — imkoniyat bo‘lsa, 1 oylik bo‘lgan paytda borib oling 🙂
❤9🔥4😱1
🧩 Laravel Lifehack:
📦 Muammo:
API response'da har doim barcha field'larni chiqarish shart emas. Ba'zilarini ma’lum holatdagina chiqarish kerak bo‘ladi (masalan: admin bo‘lsa, ko‘rsatilsin).
📌 when() 2 ta parametr oladi:
Shart (boolean)
Qiymat (agar shart true bo‘lsa, shu qiymat qo‘shiladi)
🎯 Foyda:
Kodingiz toza bo‘ladi
API response ixcham
Performance yaxshilanadi
#laravel #api #resource #azizdev #php #lifehack
$this->when() bilan shartli qiymatlar qo‘shing!📦 Muammo:
API response'da har doim barcha field'larni chiqarish shart emas. Ba'zilarini ma’lum holatdagina chiqarish kerak bo‘ladi (masalan: admin bo‘lsa, ko‘rsatilsin).
📌 when() 2 ta parametr oladi:
Shart (boolean)
Qiymat (agar shart true bo‘lsa, shu qiymat qo‘shiladi)
🎯 Foyda:
Kodingiz toza bo‘ladi
API response ixcham
Performance yaxshilanadi
#laravel #api #resource #azizdev #php #lifehack
🔥7
🎬 YANGI VIDEO TEZ ORADA!
AzeMe – bu Payme integratsiyasini yuridik shaxssiz o‘rganish imkonini beradigan sandbox clone. 👨🏻💻
Shorts videosini ko‘ring mazza qilib kuling 😄📈:
👉 https://youtube.com/shorts/LPxSzukigx0?feature=share
📌 To‘liq video bugun soat 17:00 da YouTube kanalda chiqadi. Laravel orqali AzeMe bilan qanday to‘lov tizimi integratsiyasi qilish haqida
AzeMe – bu Payme integratsiyasini yuridik shaxssiz o‘rganish imkonini beradigan sandbox clone. 👨🏻💻
Shorts videosini ko‘ring mazza qilib kuling 😄📈:
👉 https://youtube.com/shorts/LPxSzukigx0?feature=share
📌 To‘liq video bugun soat 17:00 da YouTube kanalda chiqadi. Laravel orqali AzeMe bilan qanday to‘lov tizimi integratsiyasi qilish haqida
YouTube
AzeMe x Payme Integratsiyasini O‘rganing Yuridik Shaxssiz! (Laravel bilan to‘liq qo‘llanma)
AzeMe – bu Payme Sandbox’ning klon versiyasi bo‘lib, yuridik shaxs bo‘lmasdan ham to‘lov tizimlari bilan ishlashni o‘rganish imkonini beradi. Endi siz Larave...
🔥6👍3