Creare una galleria fotografica con il Cloud Storage di Hostingsolutions.it – parte 1

Il blog InternetPost.it in questo primo anno di vita è davvero cresciuto parecchio. Abbiamo affrontato moltissimi argomenti, dalla programmazione PHP, alla gestione e hosting di applicazioni e dei siti web, alla reportistica, insomma non ci siamo fatti mancare nulla! Abbiamo deciso così di metterci alla prova realizzando, con le conoscenze a nostra disposizione, un progetto completo basato su PHP e le soluzioni di Cloud Storage di Hostingsolutions.it.

Scelta dell’applicazione e delle tecnologie

L’applicazione che realizzeremo sarà un gestore di gallerie fotografiche perché, per diversi motivi, è un caso d’uso esemplare per il Cloud Storage.

La questione più importante è sicuramente quella dello spazio su disco. Inizialmente avremo poche foto memorizzate e lo spazio fornito da un qualsiasi hosting economico potrebbe anche bastare; mano a mano che aggiungeremo immagini tuttavia lo spazio su disco si farà sempre più “stretto”, senza contare i consumi di banda che cominceranno a diventare problematici, fino a casi estremi (ma non così rari) dove il fornitore ci chiederà di passare ad un piano di livello superiore se non addirittura ad un VPS o dedicato. Queste soluzioni, in mancanza di altre motivazioni, sono chiaramente sprecate per l’uso a cui sarebbero destinate: oltre ad avere una gran potenza di elaborazione sottoutilizzata avremmo infatti anche molte più responsabilità di system administration… solamente per dello spazio su disco e della banda in più!

Uno degli obiettivi del Cloud Storage è proprio quello di risolvere questo tipo di problemi:

  • si parte da un pacchetto iniziale di dimensioni “normali”;
  • si paga effettivamente per spazio e traffico utilizzati;
  • in ogni momento è possibile acquistare risorse aggiuntive o passare ad un taglio superiore, senza dover noleggiare server dedicati o VPS.

Un’altro aspetto molto importante per applicazioni mission critical o siti web importanti è la sicurezza dei dati, dove per sicurezza si intende la raggiungibilità e la minimizzazione del rischio di perdita degli stessi. Il Cloud Storage di Hostingsolutions si basa infatti sulla rinomata tecnologia Ring Organic Storage di Scality, azienda specializzata in soluzioni di storage all’avanguardia, che permette di ottenere un’altissima disponibilità:

  • i dati sono replicati geograficamente in due data center, quello di Roma e quello di Firenze;
  • la replica avviene in almeno tre server differenti;
  • in caso di irraggiungibilità di uno dei server o addirittura di tutto il data center, i dati saranno comunque disponibili da un altro server/data center.

Ovviamente per completare l’applicazione ci serviremo ovviamente di altre tecnologie, abbiamo quindi deciso di utilizzare principalmente quelle di cui abbiamo discusso su questo stesso blog:

Open Source

L’idea iniziale era semplicemente di fornire degli esempi di codice PHP per interagire con lo storage, ma ci siamo resi conto che l’applicazione aveva, oltre a solide basi, le potenzialità per diventare un progetto vero. Inoltre sul sito web di Hostingsolutions.it ci sono già delle guide esaurienti sull’utilizzo del Cloud Storage, è inutile ripetere gli stessi argomenti. Alla fine ci siamo detti “Perché non farla diventare un progetto open-source?” e così è stato! A breve quindi attiveremo un repository su GitHub che ci permetterà di condividere con voi gli avanzamenti del codice sorgente, oltre che permettere al mondo intero di conoscere il nostro progetto, discutere, inviare proposte e bugfix, contribuire alla documentazione, in pieno spirito open source.

Links