Hosting PHP nel cloud, potenzialità e vantaggi

Hosting PHP nel cloud, potenzialità e vantaggi

Jelastic Cloud rappresenta un tipo di cloud hosting innovativo, messo a punto per offrire grande versatilità e compatibilità con linguaggi di programmazione e lo sviluppo di App.

Questa soluzione offre le risorse necessarie per garantire qualsiasi servizio, dalla semplice applicazione cloud alle applicazioni aziendali sofisticate.
Stiamo parlando di una piattaforma unificata e indicata per l’esecuzione di PHP, Java, Ruby, Node.js, Python e Docker.
Jelastic Cloud abbina la flessibilità delle infrastrutture IaaS ai vantaggi e alla scalabilità di un'architettura PaaS.

Di fatto, è possibile costruire autonomamente architetture con un elevato grado di complessità, rispettando i canoni tipici dell’high availability. L’aggiunta di applicazioni e componenti essenziali (bilanciatori di carico, server, RAM, CPU) può essere fatta comodamente dalla dashboard centrale.

Hosting PHP
PHP è considerato uno dei linguaggi di scripting lato server più facili da usare. Parliamo di un motore molto popolare, preferito dal 47,6% di clienti Jelastic.
Optare per un supporto cloud hosting PHP attraverso Jelastic PaaS rappresenta una scelta che può offrire interessanti funzionalità e importanti strumenti, per una gestione efficiente dell'hosting di applicazioni.
Nel dettaglio, Jelastic è in grado di supportare le ultime versioni dell’engine PHP; una volta scelta la release preferenziale è comunque relativamente facile effettuare il passaggio a una variante successiva sfruttando Jelastic UI.
Per definizione, Jelastic supporta due distinti server di applicazioni PHP: Apache e NGINX. Questo significa poter beneficiare del supporto esteso e dell’applicazione di patch e update recenti da parte del team di sviluppo Jelastic.

Hosting PHP nel cloud, potenzialità e vantaggi

Fonte: Jelastic.com

La maggior parte dei moderni servizi Web dovrebbe essere accessibile agli utenti in qualsiasi momento. Un problema comune, ma spesso trascurato, riguarda il processo di deployment del progetto e i relativi aggiornamenti. Tale procedimento causa la chiusura dell’applicazione o la restituzione di errori fino al termine dell’intera operazione di update.
Questa problematica può essere risolta adottando strumenti specifici e configurazioni aggiuntive ad hoc (server in bilanciamento di carico). Si tratta comunque di implementazioni che richiedono tempo, risorse e investimenti addizionali.

Diversamente, utilizzando Jelastic Zero DownTime (ZDT) Deployment per PHP è possibile rendere pienamente resiliente l’intera infrastruttura. Di fatto, ogni volta che viene eseguito un nuovo processo di deployment, i file dell'app corrispondente sono duplicati e archiviati in una directory del server separata. Successivamente, un redirector symlink si occupa di passare da una versione all'altra dell'app dopo ogni aggiornamento, indicando quella da utilizzare in un dato momento.

In tal modo, i file di progetto aggiornati possono essere distribuiti senza problemi, mentre la versione del codice iniziale continua a funzionare e a gestire le sessioni degli utenti. Al termine del deployment il collegamento simbolico passa istantaneamente alla versione più recente dell'app distribuita correttamente, iniziando a reindirizzare tutte le richieste in arrivo.

Il caricamento di progetti PHP all’interno dell’ambiente creato in Jelastic è possibile tramite archivio / URL, oppure attraverso GIT / GitHub / SVN e in distribuzione PHP Bitbucket Project. Non solo, per semplificare l’intero processo di aggiornamento è possibile configurare una re-distribuzione periodica automatica dal repository, che sarà eseguita solo nel caso siano presenti nuove modifiche al codice.
Gli sviluppatori possono inoltre beneficiare di accessi diretti SSH, SFTP e CLI.

Per facilitare le attività di produzione e distribuzione, è possibile associare un nome di dominio esterno per la singola applicazione anziché al dominio di ambiente predefinito. La funzione di scambio dei domini permette agli utenti di ricevere rapidamente eventuali update senza incappare in possibili ritardi.
Questo meccanismo permette inoltre di scambiare velocemente ambienti di produzione e di test, facilitando il lavoro degli sviluppatori.
Il vantaggio di una gestione domini centralizzata sullo stesso server PHP non si ferma qui. In questo modo è infatti possibile incrementare efficienza e scalabilità dell’applicazione, riducendo il TCO rispetto a una soluzione basata su istanze separate.

Hosting PHP nel cloud, potenzialità e vantaggi

High availability e scalabilità
Parliamo di soluzioni high availability dotate di scalabilità automatica. Il ridimensionamento verticale automatico è reso possibile dalla capacità di Jelastic di modificare dinamicamente il numero di risorse allocate (RAM e CPU) per un server in base alle sue attuali esigenze, senza richiedere alcun intervento manuale. Questa funzione permette di tagliare i costi rispetto a eventuali risorse allocate ma non utilizzate. Sussiste poi un evidente risparmio di tempo: non sarà più necessario gestire le regolazioni relative al carico o le modifiche all'architettura.
Per definire la modalità di consumo automatico di risorse da parte del server PHP è sufficiente avviare la procedura guidata e specificare il limite di ridimensionamento superiore dei singoli cloudlet.

È poi possibile intervenire sulla piattaforma per abilitare un effettivo ridimensionamento orizzontale. Per aggiungere manualmente altri server PHP è possibile operare tramite dashboard e aumentare il numero di istanze.
È bene ricordare che, per questo tipo di setup, il numero massimo di server dello stesso tipo all'interno di un singolo ambiente dipende dalle impostazioni specifiche definite dal provider.

In questa fase è possibile optare per un ridimensionamento orizzontale automatico, che può essere implementato tramite impostazioni granulari. Il monitoraggio automatico consente di apportare modifiche al variare del carico dell'applicazione, aumentando o diminuendo il numero di nodi attivi. In questo modo, è possibile configurare criteri specifici per lo stack e per le risorse base (come per esempio CPU, RAM, rete, disco).

Per migliorare parametri quali disponibilità del servizio e failover è possibile istituire un cluster di sessioni PHP sfruttando le cosiddette “sticky session”, che saranno eseguite su differenti nodi del server delle app. Il ridimensionamento delle funzionalità PHP consente di realizzare una applicazione “distribuita”, con copie esatte di dati e configurazioni all’interno dello stack.

Per lavorare agevolmente con dataset e database, Jelastic PaaS offre un set di DB server scalabili e completamente gestibili. Per la connessione e la definizione di questi componenti è possibile adottare connessioni MySQL o PostgreSQL.
Il caricamento, l’attivazione e la scelta delle estensioni predefinite consentono di estendere le funzionalità dell'ambiente PHP.
Specifiche estensioni riguardano i cosiddetti acceleratori PHP, impiegati per aumentare l'efficienza dell'applicazione mediante la memorizzazione nella cache delle parti già compilate del codice PHP, che possono essere eseguite rapidamente su richiesta dell’utente.
Per ciò che riguarda i server Apache PHP e NGINX sono disponibili set specifici di moduli integrati (Custom Apache Modules, Apache WebDav Module, Apache Statistics Module, NGINX WebDav Module).

Lato security Jelastic PaaS supporta SSL / TLS per la trasmissione dati sicura e crittografata tra server Web e browser. In questo modo le informazioni trasmesse rimarranno private e riservate, senza la possibilità che siano intercettate da terzi.
La sicurezza delle app può inoltre essere aumentata configurando a dovere il file di setup principale di PHP e modificando le impostazioni predefinite contenute e aggiungendo regole specifiche in base alle esigenze dell'applicazione stessa.

Per muovere i primi passi, ma anche per irrobustire le conoscenze di sviluppatori e team, Aruba propone numerosi tutorial specifici.