Spring Boot da fayllarni
serverga yuklash(upload)
va serverdan yuklab
olish(download)
REJA:
1. Fayllarni saqlash usullari va ularni farqlari.
2. Fayllarni to’lig’icha malumotlar ombori ( DB )ga saqlash.
3. Fayllarni “File system” usulida saqlash.
FAYLNI SAQLASH USULLARI
1. DB
2. File system
1) File system ga nisbatan yuqori xavfsizlik.
2) Backup olganda fayl byte arraylarini ham
o’z ichiga olishi.
3) DB dagi boshqa tablelar bilan
o’zaro boglanganligi uchun fayl o’chib
ketishi oldini oladi va uning ustida bajariladigan amallarni nazoratini taqdim
etadi
DB DA SAQLASHNING AFZALLIKLARI
1. Backup olganda hajmning juda kattalashib ketishi
2. DB ga ortiqcha
so’rovlarni yuborish. Bu esa oz navbatida ortiqcha resurs talab
qiladi.
3. RAM dan samarasiz foydalanishga olib keladi. Chunki biz filelarni DB ga saqlash
uchun
so’rov yuborishimizdan oldin uni RAM da saqlab turadi bu esa oz navbatida
RAM dan samarali foydalanmaslikka olib keladi.
DB DA SAQLASHNING KAMCHILIKLARI
FILE SYSTEMDA SAQLASHNING AFZALLIKLARI
1. Fayllarni DB ga saqlaganda ortiqcha amallar bajariladi va katta fayllarni DB da saqlash uzoq
vaqt talab qilishi mumkin file systemga nisbatan
2. Faylga oson kirish imkoni. URL addresini korsatishning
o’zi kifoya.
3. Ma'lumotlarni ko'chirish bu erda oson jarayon. Siz papkani kerakli manzilga nusxalashingiz va
joylashtirishingiz mumkin, shu bilan yozilgan joyga yozish uchun ruxsatlar beriladi.
4. Ma'lumotlar bazalari uchun pul to'lashdan ko'ra, veb-serveringizni kengaytirish ko'p hollarda
iqtisodiy jihatdan foydali hisoblanadi.
5. Kelajakda uni Amazon S3 yoki CDN va boshqalar kabi bulutli xotiraga ko'chirish oson va hkz.
FILE SYSTEMDA SAQLASHNING KAMCHILIKLARI
1. Fayllaringizni yozish uchun ruxsat berishingiz kerak bo'lgan papkada saqlash
mumkinligi sababli, u xavfsizlik bilan bog'liq muammolarga olib keladi va buzish kabi
muammolarni keltirib chiqaradi. Shunday qilib, xavfsizlik nuqtai nazaridan murosaga kela
olmasangiz, file system da saqlashdan yiroq bolganingiz yaxshiroqdir.
2. Fayl
o’chirib yuborilganda uning mavjud yoki yo’qligini bilmasligingiz.
3. Hech qanday bogliqliklar mavjud bolmaydi va hkz
-
Agar sizning dasturingiz juda
ko’p va katta file lar bilan ishlashdigan bo’lsa
eng yaxshi yechim File System usulida saqlash
- Agar sizning dasturingiz Foydalanuvchilari file lari uncha
ko’p bolmaga holat
bo’lsa, ularning himoyalanganligi va confidensialligi yuqori bolsa u holatda eng
maqbul yechim DB da saqlash hisoblanadi.
QACHON VA QAYSI USULNI TANLASH KERAK?
DB DA SAQLASH
Bunda biz fileni saqlash uchun DB da ikkita table saqlab olamiz.
Table larimiz nomlarini (ixtiyoriy) quyidagicha nomlab olamiz:
attachment
id
name
size
type
attachment_comtent
id
byte []
attachment_id
Etiboringiz uchun rahmat
.
Dostları ilə paylaş: |