Archivi tag: how to

Come installare un ambiente WAMP (Windows, Apache, MySQL, PHP) sul proprio PC (aggiornamento 2014)

Come installare un ambiente WAMP

La presente guida è la versione aggiornata di quella scritta più di un anno fa Come installare un ambiente WAMP (Windows, Apache, MySQL, PHP) sul proprio PC.

Questa volta però oltre a descrivere il procedimento di installazione dell’ambiente WAMP abbiamo deciso di fornire due archivi già pronti per chi va di fretta.
Continua la lettura di Come installare un ambiente WAMP (Windows, Apache, MySQL, PHP) sul proprio PC (aggiornamento 2014)

Come organizzare i file multimediali nella propria web application

Nel contesto in cui dovessimo sviluppare una web application che utilizzi un database come MySQL dovremmo decidere come organizzare i file multimediali.

La domanda cioè che potremmo porci sarebbe più o meno la seguente:

Immagini, PDF, filmati e file audio dove li metto, nel database sottoforma di BLOB o li tengo su filesystem?

Come sempre, entrambe le soluzioni hanno pregi e difetti che elencherò a breve; conoscerli equivale a prendere la decisione giusta in base al contesto in cui ci troviamo.

File multimediali nel database come BLOB

Pregi

  • il loro backup è facilitato in quanto è incluso nel backup del database;
  • non è necessario organizzarli né dare loro un nome;
  • sono direttamente collegati ai dati dell’applicazione;

Difetti

  • andranno ad occupare spazio su database e in genere questo è sconveniente dal momento che i servizi di hosting tendono a far pagare lo spazio occupato dal database piuttosto che lo spazio web, in genere illimitato anche nei pacchetti più economici;
  • il database tratta immagini, PDF, filmati e file audio allo stesso modo, cioè come larghi oggetti binari, BLOB appunto e quindi, a meno di software apposito, non avremo nessun tipo di supporto da parte del database per vedere e manipolare questi contenuti;
  • ad un certo punto questi file andranno probabilmente letti dal database per poter essere mostrati all’utente impedendo al web server di attuare alcuna forma di caching verso il client. Questo aumenterà banda e tempi di caricamento anche per immagini immutate;

File multimediali su filesystem

Pregi

  • non occupano spazio su database e quindi risultano più economici per i servizi di hosting a pagamento;
  • il filesystem dei moderni S.O. abbinato al FileManager e a un lettore multimediale offrono un supporto di base ai vari formati multimediali (anteprima, visualizzazione, ricerca), per di più ne consentono un’organizzazione gerarchica e una gestione di massa attraverso console e tools a riga di comando (es. ridimensionare tutte le immagini alla tal dimensione utilizzando mogrify di ImageMagick);
  • il web server è in grado di attuare del caching diminuendo la banda occupata e velocizzando il processo di caricamento delle pagine da parte degli utenti;

Difetti

  • rispetto ai dati contenuti nel database, ne va fatto un backup a parte;
  • va decisa un’organizzazione in cartelle e va scelta una policy per i nomi;
  • non sono immediatamente collegati al resto dei dati: andrà scritto del codice per collegare i record ai file attraverso la policy scelta per organizzarli e nominarli;

In definitiva a meno che non abbiate necessità particolari di backup o mirroring dei contenuti multimediali quasi sempre sarà più conveniente tenerli su filesystem.