Skip to content

File Service

File Service tizimda fayllarni yuklash, saqlash, yuklab olish va qayta ishlash uchun mo‘ljallangan servis hisoblanadi. Ushbu servis fayllar bilan bog‘liq barcha jarayonlarni markazlashgan holda boshqaradi.


Asosiy vazifalari

  • Foydalanuvchi tomonidan yuborilgan fayllarni qabul qilish
  • Fayllarni belgilangan qoidalarga asosan tekshirish
  • Fayllarni server yoki obyektli storage’da saqlash
  • Fayllarni va rasmlarni qayta yuklab berish
  • Rasmlarni dinamik o‘lchamlarga moslab qayta ishlash
  • Fayllarni bir storage’dan boshqasiga migratsiya qilish
  • Barcha muhim xatoliklarni loglash

Fayl yuklash imkoniyatlari

File Service fayllarni bir nechta usulda qabul qila oladi:

  • Forma orqali yuborilgan fayllar
  • Kategoriya asosida yuborilgan fayllar
  • Base64 formatda yuborilgan fayllar

Yuklash jarayonida quyidagilar tekshiriladi:

  • Fayl hajmi belgilangan limitdan oshmasligi
  • Fayl kengaytmasi ruxsat etilgan formatlar ichida bo‘lishi
  • Fayl kategoriyaga mos kelishi
  • Fayl nomida xavfli yoki noto‘g‘ri yo‘l ko‘rsatkichlari bo‘lmasligi

Fayllarni saqlash mexanizmi

Fayllar ikki xil usulda saqlanishi mumkin:

  • Server fayl tizimida
  • MinIO obyektli storage’da

Saqlash jarayonida:

  • Fayl haqida barcha meta ma’lumotlar bazaga yoziladi
  • Fayl joylashuvi va saqlash turi qayd etiladi
  • Sana, hajm, format va kategoriya ma’lumotlari saqlanadi
  • Operatsiya tranzaksiya asosida bajariladi

Fayllarni yuklab olish

File Service saqlangan fayllarni foydalanuvchiga qaytarib bera oladi:

  • Oddiy fayllar attachment sifatida beriladi
  • Rasmlar brauzerda ko‘rish uchun inline rejimda beriladi
  • Fayl mavjud bo‘lmasa, mos xatolik qaytariladi
  • Content-Type va fayl nomi avtomatik belgilanadi

Rasmlar bilan ishlash

Rasmlar uchun qo‘shimcha imkoniyatlar mavjud:

  • Kenglik va balandlik bo‘yicha aniq o‘lcham berish
  • Foiz asosida masshtablash
  • Faqat kenglik yoki faqat balandlik bo‘yicha moslash
  • Agar kerakli o‘lcham mavjud bo‘lmasa, avtomatik yaratish
  • Qayta ishlangan rasmni kesh sifatida saqlash

Migratsiya jarayoni

File Service fayllarni storage’lar o‘rtasida ko‘chirishni qo‘llab-quvvatlaydi:

  • Serverdan MinIO’ga ko‘chirish
  • MinIO’dan serverga qaytarish
  • Limit asosida bosqichma-bosqich migratsiya
  • Har bir migratsiya natijasi statistik ko‘rinishda qaytariladi

Xavfsizlik va xatoliklar

  • Noto‘g‘ri so‘rovlar uchun aniq xatoliklar qaytariladi
  • Fayl topilmasa yoki ruxsat bo‘lmasa xatolik beriladi
  • Saqlash jarayonidagi muammolar loglanadi
  • Muhim xatoliklar monitoring tizimiga yuboriladi

Xulosa

File Service — bu fayllar bilan ishlash uchun to‘liq funksional servis bo‘lib, u yuklashdan tortib, saqlash, qayta ishlash va migratsiyagacha bo‘lgan barcha jarayonlarni o‘z ichiga oladi. Servis yuqori xavfsizlik, moslashuvchanlik va kengaytiriluvchanlikni ta’minlaydi.