Utilizzo di AWS S3 per potenziare il mondo digitale

Come designer, sviluppatore web e techie-geek, ho bisogno di una soluzione di archiviazione dei dati versatile e affidabile che posso permettermi, ma anche di usare senza imparare un nuovo linguaggio. Finora, ho trovato solo un servizio in grado di gestire la maggior parte delle mie esigenze. Questo articolo spiega come utilizzare il servizio di archiviazione semplice di Amazon Web Services (AWS S3) per soddisfare la maggior parte delle mie esigenze.


AWS S3

AWS S3 è la soluzione di cloud storage di Amazon. È versatile, affidabile, veloce e scalabile per adattarsi a quasi tutti i bisogni. Naturalmente con un servizio che suona così bene ci si aspetterebbe che sia costoso, ma in realtà è la soluzione di archiviazione più economica che ho trovato sul web, considerando le funzionalità che si ottengono.

AWS S3 è destinato agli sviluppatori, ma grazie ad alcuni grandi strumenti, è abbastanza facile da usare per chiunque. Prima di iniziare a utilizzare AWS S3, desidero menzionare che questa soluzione di archiviazione non utilizza la tradizionale struttura di file di cartelle / file, ecc. Invece AWS S3 utilizza "bucket" in cui archiviare gli oggetti. Gli strumenti che uso fanno sembrare AWS S3 un normale file system ad eccezione dei "bucket". Pensa a un secchio come a un disco rigido separato in cui archiverai i tuoi file. Potresti anche voler leggere la pagina Amazon S3 su Wikipedia. Quindi andiamo avanti con come utilizzo AWS S3.


AWS S3 + Jungle Disk

Probabilmente utilizzo Jungle Disk più spesso perché semplifica l'utilizzo e la gestione dei bucket di AWS S3, esegue backup automatici e centralizza i miei dati per l'accesso ovunque e in qualsiasi momento. Quando si utilizza Jungle Disk con l'account AWS S3, si decide quale dei propri bucket Jungle Disk può essere montato come unità di rete. Quindi, puoi trascinare e rilasciare l'accesso ai tuoi file AWS S3! Jungle Disk inoltre crittografa i tuoi file, in modo che siano sicuri e protetti.

Jungle Disk offre numerose opzioni per la gestione dei bucket, backup automatici, crittografia, limitazione della larghezza di banda e molto altro ancora. Ha anche uno strumento di monitoraggio per visualizzare e gestire i trasferimenti in corso. In genere viene eseguito in background, ma è molto utile quando si desidera agire su qualcosa o semplicemente guardare cosa sta succedendo.

Se sei preoccupato per la compatibilità multipiattaforma, non essere! Jungle Disk ha versioni del loro software per Windows a 32 e 64 bit, Linux e Mac. Hanno persino una versione che puoi eseguire da una chiavetta USB su tutte e tre le piattaforme per un rapido accesso ai tuoi file da qualsiasi luogo.

Naturalmente, se si dimentica la chiavetta USB, hanno anche accesso Web ai file. Se lavori con altre persone che hanno bisogno di accedere ai tuoi file, Jungle Disk può farlo anche tu. Hanno opzioni multiutente per rendere l'accesso ai secchi AWS S3 molto facile per diverse persone.

Pertanto, abbiamo un cloud storage multipiattaforma facile da trascinare e che possiamo accedere ovunque con tantissime opzioni. Cos'altro ci serve?


AWS S3 come "CDN" o accesso ai file pubblici

Molti di voi probabilmente hanno blog o siti Web che avete ospitato su un server web per cui pagate. Come tutti sappiamo, il web hosting di qualità non è economico, soprattutto quando si tratta di spazio di archiviazione. Non voglio usare la mia costosa memoria del server web per immagini e altri download di file e soprattutto non voglio impantanarmi sul mio server web con richieste di file da parte dei visitatori quando c'è un modo migliore per farlo.

S3Fox per Firefox

S3Fox è un componente aggiuntivo di Firefox che consente di gestire i bucket e i file AWS S3. Perché abbiamo bisogno di S3Fox quando potremmo usare Jungle Disk? S3Fox fa alcune cose a cui Jungle Disk non è destinato, come la gestione delle distribuzioni di CloudFront che vedremo in seguito. Ho creato un bucket chiamato "files.jremick.com" che ho intenzione di utilizzare per ospitare immagini e file per il mio blog, nonché altri siti Web e altri scopi casuali.

Poi ho installato un CNAME sul mio server web dirigendo "files" e "www.files" in "files.jremick.com.s3.amazonaws.com". che mi consentirà quindi di utilizzare il sottodominio "http://files.jremick.com" per accedere ai file che ho inserito nel bucket "files.jremick.com" per la visualizzazione pubblica. Gli altri due sono usati da CloudFront, di cui parleremo più tardi.

Quindi ora abbiamo un modo semplice per accedere ai file su http://files.jremick.com. Potremmo usarlo come una sorta di "CDN" (anche se non sarebbe un vero CDN) o potremmo semplicemente usarlo per fornire download di file che non impantaneranno il nostro server web. Se ti stai chiedendo, sì, puoi visualizzare e scaricare l'immagine panoramica dal mio account S3 e no, non sono preoccupato per la larghezza di banda perché è super economico! :-) Puoi trovarlo qui: http://files.jremick.com/red-rock-panorama.jpg. Hai notato la directory "wp-content"? Eh familiare? Per utilizzare AWS S3 con WordPress!

Plugin AWS S3 per WordPress

Il plugin AWS S3 per WordPress è uno dei miei plugin preferiti per WordPress perché consente di utilizzare il mio account AWS S3 per ospitare i media per il mio blog piuttosto che per il mio costoso server web. Ovviamente potrei farlo manualmente se volessi, ma il plugin integra questa funzionalità con WordPress così posso caricare i file senza lasciare il mio pannello di controllo di WordPress.

Potresti chiederti perché questo è utile. Bene, per i principianti, le immagini e gli altri media caricati dal tuo account AWS S3 probabilmente caricheranno più velocemente semplicemente perché stai utilizzando i server di Amazon piuttosto che il tuo server (possibilmente pacchiano). Inoltre, il tuo server web non sarà impantanato durante il caricamento di questi file multimediali e i tuoi normali file PHP / HTML.

Il tuo sito web si caricherà anche più velocemente per la maggior parte delle persone perché nella maggior parte dei browser sei limitato al numero di download paralleli da un singolo dominio. Se stai ospitando le tue immagini sul tuo account AWS S3 che proviene da un dominio secondario, i browser potranno caricare più file contemporaneamente. Vedi Massimizzazione dei download paralleli nella corsia di Carpool per ulteriori informazioni.


AWS S3 + CloudFront

OK, quindi ho spiegato come utilizzo AWS S3 per l'archiviazione in rete, nonché per i miei siti web e per ridurre il carico sul mio server web. Se gestisci un sito web ad alto traffico (cosa che non faccio) o sei solo un nerd (come me) e vuoi che le cose funzionino il più velocemente possibile, ti consigliamo di dare un'occhiata anche a Amazon CloudFront.

In precedenza nell'articolo che ho inserito "AWS S3 come" CDN "o accesso ai file pubblici" con CDN tra virgolette. La ragione per cui l'ho fatto è perché AWS S3 NON è un vero CDN. Una rete CDN è una Content Delivery Network che fornisce i tuoi file da una distribuzione di server in tutto il mondo. I visitatori ottengono l'accesso ai tuoi file dalla risorsa più veloce disponibile (di solito il server più vicino). AWS S3 ha solo alcuni data center in tutto il mondo e i tuoi dati saranno probabilmente in un'unica posizione, rendendoli lontani da un CDN.

Se desideri la migliore velocità per i visitatori di tutto il mondo, ti consigliamo di utilizzare un vero CDN come CloudFront. Per fortuna Amazon ha reso super facile utilizzare questi servizi insieme. Mi sono già iscritto a CloudFront e ora ho solo bisogno di configurarlo usando S3Fox.

È sufficiente fare clic con il pulsante destro del mouse sul bucket che si desidera distribuire su Amazon CloudFront e fare clic su "Gestisci distribuzioni". Da qui puoi configurare la tua distribuzione CloudFront. Ti verrà assegnato un dominio univoco per la distribuzione; "d1i7xb2p8w9276.cloudfront.net" è ciò che questa distribuzione è stata assegnata.

Ho anche usato "cdn.jremick.com" come CNAME per questa distribuzione in modo da poter accedere ai file su http://cdn.jremick.com. Vedrai lo stato come "InProgress" finché la distribuzione non sarà stata distribuita e lo stato cambierà in "Distribuito".

Quindi ho configurato il CNAME sul mio server web.

Ora quando richiedo i file su http://cdn.jremick.com verranno richiesti dai server CloudFront che estraggono i file dall'account AWS S3 e li memorizzano nella cache per tutte le richieste successive.

Ci sono tuttavia alcuni svantaggi per CloudFront (e altri veri CDN). Una volta che un file è stato memorizzato nella cache sui server CloudFront, non verrà più richiesto dall'account AWS S3. Ciò significa che dovrai eseguire la versione dei tuoi file (filename_v1.css, filename_v2.css, ecc.) In modo che riflettano effettivamente le modifiche per gli utenti. È un ottimo servizio, ma in realtà è destinato più a scopi di alto traffico. Nella maggior parte delle situazioni per le persone normali con blog, AWS S3 andrà benissimo. Userò CloudFront per ospitare JavaScript, CSS e altri file statici, solo perché sono un nerd e voglio delle prestazioni! :-)


AWS S3 + S3Sync = Backup di server offsite automatizzati

Sono un guaio di preoccupazione quando si tratta di perdere dati. Il mio server web ospita circa 20 account per altre persone ed è molto importante assicurarsi che tutti i dati vengano salvati, protetti e protetti. È qui che entra in gioco S3Sync. Posso usarlo per fare il backup automatico del mio server web su un bucket AWS S3 specificato.

Qui, sono passato a Transmit (FTP per Mac con supporto AWS S3) e ho effettuato l'accesso al mio account AWS S3. Sto guardando il mio bucket "servintbackups" che mostra le diverse cartelle di backup. Ogni notte i backup vengono aggiornati automaticamente sul mio account AWS S3.

Se vuoi farlo, dai un'occhiata a questi tutorial.

  • Automatizzare i backup con Amazon S3 su Linux
  • Come ho automatizzato i miei backup su Amazon S3 usando S3Sync

Conclusione

Usando AWS S3 e una varietà di strumenti sono riuscito a ottenere molto per un po '.

  • Accesso centralizzato ai file nel cloud, ovunque, su qualsiasi piattaforma.
  • Backup automatici per computer desktop e server.
  • Accesso Web ai tuoi file.
  • Media di hosting al di fuori del tuo server web per ridurre il carico e accelerare le cose.
  • Facile da configurare "CDN" e / o fornire accesso ai file per gli utenti.
  • Facile da configurare true CDN con CloudFront.

Come ho detto prima, AWS S3 è stato progettato per gli sviluppatori; quindi se ho bisogno di usarlo per ancora più soluzioni, allora l'opportunità è lì.

Per quanto AWS S3 sia, potrebbe non adattarsi alla bolletta per ogni problema che hai. Ad esempio, i server AWS S3 non gzip i file e il backup di 200 GB di dati (come una libreria di iTunes) costerebbe $ 30 al mese contro $ 5 o $ 10 al mese su altri servizi. AWS S3 è solo uno degli strumenti che uso tra molti.

Utilizzi AWS S3? O preferisci un'altra soluzione simile? Raccontaci nel commento!

Questo articolo è stato originariamente pubblicato sul blog ThemeForest. Attualmente stiamo effettuando il porting su alcuni degli articoli più popolari su Nettuts+.