Come faccio a rendere accessibile internamente un'applicazione web basata su cloud in caso di interruzione di Internet?

5

Ho un'applicazione Web Java supportata da un database. Entrambi sono ospitati in Amazon EC2. Se Internet non funziona, devo consentire agli utenti interni di continuare a lavorare e in qualche modo aggiornare il servizio in hosting quando Internet sarà nuovamente disponibile. È possibile? Come potrei progettare una soluzione del genere.

    
posta bobby 15.03.2013 - 18:42
fonte

1 risposta

4

Quando si ha a che fare con un'applicazione web ci sono due componenti di interesse primario: il server e la rete.

Un'applicazione web java viene eseguita in un server delle applicazioni (si tratta di un'applicazione come jBoss, Weblogic o molo autosufficiente) su un server stesso (linux, windows, ecc.).

Se il server delle applicazioni non è in esecuzione, le applicazioni al suo interno non sono in esecuzione e non sarà possibile connettersi a esse. Questo è vero non importa se le applicazioni al loro interno forniscono servizi Web o pagine web più tradizionali.

Se il server stesso non funziona, le applicazioni in esecuzione sul server (il server delle applicazioni, il database e simili) non sono in esecuzione.

Se la rete tra te e il server non è attiva, beh, la rete non funziona e non è possibile connettersi alle applicazioni (indipendentemente dal fatto che siano in esecuzione o meno).

L'approccio standard alla gestione del server è inattivo è la ridondanza - mettere l'applicazione su più server in modo che se uno non riesce a connettersi tenterà di connettersi a un altro. Ciò non garantisce che funzionerà sempre (un'interruzione della rete in un'area abbastanza ampia o un problema a cascata nel cloud computing può portare via più sistemi fuori linea).

Le specifiche di quanto e quanto ridondanza sono necessarie dipendono dai requisiti di una data applicazione. Alcune persone hanno bisogno di un uptime del 99,999%, alcune richiedono solo il 99% di uptime (e aspettano che la rete o il sistema si correggano piuttosto che investire in ridondanza aggiuntiva).

Ricordare che quando si pianifica la ridondanza è probabilmente necessario che più componenti debbano essere ridondanti. Se si dispone di più applicazioni Web ridondanti che utilizzano lo stesso database e il database non funziona, si ha ancora un singolo punto di errore con il database.

Ok, quindi diciamo che la rete è andata giù dopo aver caricato la pagina. Ora sei offline.

Html 5 offre la possibilità di avere una certa quantità di elaborazione locale. Nota che questo significa che puoi lavorare solo con il codice e i dati che hai sulla macchina . Se la logica di business per l'applicazione è ospitata nel cloud, significa che quando il cloud non è disponibile, quella porzione di logica non è disponibile.

Alcune risorse per le applicazioni offline html 5:

Una ricerca google per "app web offline html5" (e relative query) fornirà più risorse.

    
risposta data 15.03.2013 - 19:15
fonte

Leggi altre domande sui tag