[ S A J A @ 02.04.2019. 15:43 ] @
Pravim sistem gde će korisnici moći da uploaduju razne fajlove, od slika do raznih dokumenata. Od preporuka za to na internetu sam video samo "drži fajlove na disku, ne u bazi" i to nije sporno. Mislim da je glupost držati fajlove u bazi. Međutim, ja imam drugi problem. Meni treba veći prostor za te fajlove i ne odgovara mi da bude na istom serveru gde je i sajt. Pošto diskovi na VPS-ovima nisu nešto veliki, retko prelaze 200 GB a meni treba značajno više, na Hetzneru ima da se zakupi poseban storage server 10 TB za 40e i to mi je nekako taman za sada ;) Sad mi samo trebaju smernice kako je najbolje uraditi arhitekturu. Aplikacija ima klijentski deo i serverski deo koji je samo REST Api u PHP-u. I sad tu imam dve varijante: 1. U klijent aplikaciju (Javascript SPA) da šaljem direktan link i da se fajlovi preuzimaju sa storage servera kad zatrebaju. Ovo mi je nekako nebezbedno jer onda na klijent strani moram da pošaljem login podatke za storage server pa onda nekako po folderima da krijem fajlove... 2. Da Api server isporuči fajl tako što bi ga prvo preuzeo sa storage servera, otprilike echo file_get_contents(...) pa inicirao download. To sam i probao i odlično radi. Tu je prednost što storage nije dostupan direktno ali mi se opet ne sviđa ideja da kod poziva prvo prebacujem fajl sa jednog servera na drugi, učitavam u memoriju pa isporučujem na download. Ako tu bude bilo mnogo zahteva, celo to prebacivanje sa servera na server će mi praviti opterećenje i sad nisam pametan šta raditi. Prva varijanta mi ne deluje bezbedna a druga kao da pravi nepotreban load. Testirao sam i brzinu obe varijante, fajl koji se direktno preuzima mnogo brže započne download nego ovaj što prethodno putuje sa servera na server. Jel postoji možda neka treća varijanta za ovu situaciju? |