Architettura WordPress altamente scalabile
Architettura WordPress altamente scalabile
Architettura WordPress altamente scalabile
, ,

Hosting WordPress AWS: migrazione di un sito WordPress ad alte prestazioni e ad alto traffico su AWS

Ti è piaciuto questo articolo?
Condividilo sui social media!
Contenuto

Se gestisci il tuo sito su WordPress da un po' di tempo e hai fatto tutto nel modo giusto, potresti avere tra le mani un sito web ad alte prestazioni e con un traffico elevato. Tuttavia, se stai pensando di migrare ad Amazon Web Services, questo potrebbe rappresentare un potenziale problema. Migrare un sito di grandi dimensioni con molti contenuti e attività può sembrare scoraggiante, ma esiste un modo giusto per farlo. Scopri come scalare WordPress su AWS qui!

L'idea alla base di questo post è mostrare come identificare i livelli e i servizi necessari per gestire correttamente il tuo sito WP ad alto traffico.

Alcuni concetti IT essenziali

Approfondiamo alcune definizioni IT fondamentali per capire cosa faremo.

  • Alta disponibilità. Nel mondo dell'informatica, l'alta disponibilità si riferisce a un sistema in grado di funzionare bene, a un livello di prestazioni operative precedentemente concordato, per un lungo periodo. Per soddisfare gli standard sopra indicati, il sistema deve essere privo di interruzioni e malfunzionamenti per un periodo di tempo superiore alla media. L'alta disponibilità si riferisce anche a sistemi con componenti ridondanti, un'infrastruttura che AWS rende molto più confortevole.
  • Scalabilità. Riguarda la capacità di un sistema di aumentare o diminuire automaticamente le proprie risorse in base al livello di domanda degli utenti. Diverse risorse AWS offrono scalabilità, in particolare ELB, RDS, S3 ed EC2.
  • Servizi distribuiti / Accoppiamento lento. Un approccio in cui diversi componenti di un sistema sono interconnessi al punto da dipendere in modo lasco l'uno dall'altro per funzionare correttamente. Utilizziamo il loose coupling per avere host dedicati per un singolo servizio e anche per sfruttare i carichi.

Ecco come dovrebbe apparire l'architettura WordPress ideale e altamente scalabile:

Architettura WordPress altamente scalabile

Servizi Web Amazon

Cosa sono esattamente gli Amazon Web Services e cosa fanno?

Cloud privato virtuale

La VPC consente ai clienti aziendali di disporre di una rete privata in cui collocare le proprie risorse di cloud computing. Nessuno al di fuori dell'azienda in questione ha accesso a questo cloud.

Sottorete pubblica

Analogamente al server di un sito web, una subnet pubblica è una subnet in cui collocare le risorse che desideriamo rendere pubbliche. È associata a una tabella di routing, che a sua volta conduce a un gateway Internet, collegando così la VPC al web più ampio.

Sottorete privata

A differenza della subnet pubblica, quella privata è il luogo in cui distribuire tutte le risorse che vogliamo tenere nascoste agli estranei. Per la nostra architettura attuale, collocheremo il database su questa applicazione.

Fronte di nuvole

Questa rete di distribuzione dei contenuti è dedicata all'invio più rapido di contenuti agli utenti finali. Ciò avviene tramite una rete globale di server proxy che memorizzano nella cache i contenuti più pesanti, come video e altri media. Utilizzando CloudFront, gli utenti riceveranno i contenuti multimediali su WordPress tramite la posizione edge più vicina disponibile, rendendo l'esperienza più rapida.

S3 o servizio di archiviazione semplice

S3 collabora con CloudFront per rendere il prodotto finale più veloce per gli utenti. Questa soluzione di storage è quella da cui WordPress otterrà i suoi contenuti ogni volta che verrà ridimensionato, sia in verticale che in orizzontale. È la struttura altamente scalabile che Amazon utilizza sulla sua rete globale.

EC2 o Elastic Compute Cloud

L'obiettivo di AWS è acquisire ulteriore potenza di calcolo consentendo alle aziende e ad altri utenti di noleggiare "computer virtuali" per eseguire le rispettive applicazioni.

RDS e Multi A-Z

Un servizio completamente gratuito gestito da AWS, che migliora la durabilità e la disponibilità delle istanze di database. In definitiva, è qui che ospiteremo il database WordPress. L'abilitazione della funzionalità Multi-Availability Zone migliora notevolmente la disponibilità. Inoltre, questo servizio offre un'eccellente funzionalità per la scalabilità: le istanze RDS possono replicarsi tra loro.

Percorso 53

Uno dei servizi più basilari dell'arsenale AWS, è un Domain Name System (DNS) altamente scalabile e disponibile. Permette a utenti e aziende di gestire il traffico e le richieste future.

Bilanciatore del carico

Chiamata anche Elastic Load Balancing, questa applicazione distribuisce il carico di traffico tra le diverse istanze disponibili. Consente di gestire il carico scalabile su diverse zone di disponibilità o di gestire direttamente il traffico all'interno di una singola zona di disponibilità.

Scalabilità automatica

Questa applicazione costituirà il fondamento del nostro sito WordPress scalabile e altamente disponibile. Il ridimensionamento automatico regola automaticamente la capacità del sito per renderlo più efficiente, ovvero prestazioni costanti a costi contenuti. Grazie a questo, il pubblico esterno riceverà il minor numero possibile di istanze e, in caso di problemi, il ridimensionamento automatico la sostituirà con un'istanza funzionante.

Cloudwatch

Cloudwatch è il servizio di monitoraggio AWS che monitora parametri predefiniti o predefiniti, tra cui la rete e l'utilizzo della memoria.

EFS o Elastic File System

Eseguito sul cloud pubblico AWS, è un servizio di archiviazione cloud dedicato ad applicazioni e carichi di lavoro all'interno del sistema. Replica i contenuti più velocemente, certo, ma potremmo non utilizzarlo così tanto quando condividiamo esclusivamente file WordPress.

Come AWS lavora per creare un sito altamente disponibile

Una volta che tutto è pronto, ecco come apparirà il flusso del traffico:

Architettura WordPress altamente scalabile

Impostando i servizi sopra indicati, il tuo sito sarà in grado di servire milioni di visitatori, che riceveranno tutti la stessa qualità. Che tu stia riscontrando un'impennata di traffico o un momento di particolare difficoltà, il sito sarà in grado di soddisfare le tue esigenze. Ecco come apparirà quando il traffico aumenterà:

Esempio di ridimensionamento automatico

Nel frattempo, le tue risorse AWS appariranno così:

Architettura WordPress altamente scalabile

L'architettura attuale del sito

Ora che hai familiarità con le funzioni AWS sopra menzionate, ecco cosa dovresti realizzare per un'architettura del sito ottimale:

  • CDN o rete per la distribuzione di contenuti. Rende i tuoi contenuti più veloci diffondendoli in tutto il mondo e ospitandoli su una rete di server.
  • Prestazioni della memoria e della CPU. Saremo in grado di scalare, sia verso l'alto che verso il basso, a seconda delle metriche di memoria e della CPU. Il traffico non causerà sovraccarichi dovuti alla mancanza di memoria, con conseguenti errori 500, perché il tempo di risposta rimarrà lo stesso tra i diversi server.
  • Memorizzazione nella cache del server WordPress. Noto anche come server side-caching. Ogni volta che un visitatore di un sito web richiede una pagina, la richiesta viene inoltrata al database per ricercare le informazioni della pagina. La memorizzazione nella cache crea un file temporaneo anziché richiedere ulteriore tempo di elaborazione sul database, rendendo il tutto più veloce.
  • Tipi di istanza. Scegli il tipo di istanza AWS più adatto al carico di lavoro gestito dal tuo sito. Dovrai anche selezionare il numero appropriato di risorse per un funzionamento ottimale.

Tipi di istanze AWS

Note aggiuntive

Ora hai creato l'architettura giusta per un sito WordPress scalabile su Amazon Web Services! Ecco alcune buone pratiche:

  • Non farti cogliere di sorpresa e configura Cloudwatch in modo che ti avvisi se qualcosa va storto. Abilita anche l'avviso di fatturazione, che ti eviterà spese extra.
  • Se hai intenzione di continuare a utilizzare AWS per un po', le istanze riservate possono farti risparmiare fino al 30%.
  • Tieni traccia di tutte le modifiche utilizzando un sistema di controllo delle versioni.
  • Ottieni prestazioni ancora migliori utilizzando un plugin dedicato al database, alla memorizzazione nella cache delle pagine e alle query.
  • S3 e CloudFront sono la soluzione ideale per una distribuzione rapida dei contenuti.
  • Utilizzare un Aurora RDS dedicato per aumentare le prestazioni RDS.
  • Backup! A volte, accadono eventi al di fuori del nostro controllo. È sempre essenziale disporre di una strategia di backup affidabile e di una soluzione di disaster recovery adeguata. Una caratteristica che distingue AWS è che i suoi servizi possono essere molto ridondanti tra loro, il che rende il backup molto più gestibile. Anche Amazon fornisce soluzioni a questo problema, su diversi fronti.

In tutto…

Anche se può sembrare un po' complicato, Amazon Web Services semplifica notevolmente la creazione dell'architettura adatta a WordPress. È solo questione di sapere cosa si sta creando.

Noi di Bright Vessel collaboriamo da molto tempo con AWS e disponiamo degli strumenti e di un team di esperti per aiutarti a salpare per questa nuova avventura. Contattaci per maggiori informazioni.

Ottieni il tuo audit SEO gratuito

Modulo di verifica SEO gratuito

"*" indica i campi obbligatori

Questo campo serve per la convalida e non dovrebbe essere modificato.
Contenuto
Ti è piaciuto questo articolo?
Condividilo sui social media!
Ottieni il tuo audit SEO gratuito

Modulo di verifica SEO gratuito

"*" indica i campi obbligatori

Questo campo serve per la convalida e non dovrebbe essere modificato.
Ottieni il tuo audit SEO gratuito

Modulo di verifica SEO gratuito

"*" indica i campi obbligatori

Questo campo serve per la convalida e non dovrebbe essere modificato.
Ti è piaciuto questo articolo?
Condividilo sui social media!

Lascia una risposta

Dai un'occhiata a un altro post del blog!

Torna a tutti i post del blog
© 2024 Bright Vessel. Tutti i diritti riservati.
versione xml="1.0"? versione xml="1.0"? chevron-down freccia sinistra