Come garantire che tutti i clienti dispongano della versione più recente dell'applicazione Web su Intranet?

3

Come aggiornare l'applicazione Web distribuita su intranet? Esiste un'applicazione Java Spring che verrà distribuita su intranet di più clienti.

Nel caso in cui ci sia un aggiornamento importante che cosa dovrebbe fare lo sviluppatore per assicurarsi che tutti i clienti abbiano l'ultima versione del suo software?

Esiste un'opzione che un modulo di aggiornamento è implementato nell'applicazione e interrogherà automaticamente il repository web centrale per gli aggiornamenti. Questa opzione non funziona se il server in cui è installata l'applicazione non ha una connessione Internet.

Un'altra possibilità che mi viene in mente è quella di inviare manualmente un file .war al personale IT di tutti i clienti affinché possano installare la versione più recente.

Come gestire gli aggiornamenti in questa situazione?

    
posta Limbo Exile 14.11.2013 - 09:25
fonte

2 risposte

1

Posso pensare a diverse opzioni:

a) tieni traccia di quale versione del software è in esecuzione ogni cliente e quando hai una nuova versione, informa il cliente di questo insieme con le istruzioni su come ottenere e applicare l'aggiornamento. Questo è un processo manuale che può essere ampiamente automatizzato.

b) se il sito dispone di connettività Internet, è possibile scrivere un modulo in-app che periodicamente controlla gli aggiornamenti e scarica l'aggiornamento sul server. Una persona autorizzata potrebbe quindi essere informata via e-mail e applicare manualmente l'aggiornamento fuori app (ad esempio, l'accesso al server e l'esecuzione di uno script) o tramite l'approvazione in-app (ad esempio l'app imposta un flag su uno script privilegiato sul il server delle app preleva e applica l'aggiornamento). Questo è un processo manuale / semiautomatico che il cliente controlla.

c) installa il tuo programma di aggiornamento sul server e fallo periodicamente telefonare a casa e controllare gli aggiornamenti. Se viene trovato un aggiornamento, scaricalo e al momento giusto, aggiorna automaticamente il server. Nel caso di un file war, è possibile eseguire uno script da cron che controlla, scarica, arresta il server dell'app, sostituisce il file war e avvia nuovamente il server dell'app. Se la connettività del sito è scarsa o l'aggiornamento è grande, considera di tenere separati il recupero e l'aggiornamento in modo da lasciare tempo sufficiente per entrambi. Questa è una soluzione automatizzata, quindi fai attenzione: assicurati che il cliente sia d'accordo e capisca le implicazioni.

d) se non ci sono connettività Internet, non è possibile automatizzare gran parte della scoperta e del recupero. Tuttavia, è possibile che sia facile per la persona responsabile applicare l'aggiornamento. Ad esempio, offrendo istruzioni chiare su come ottenere l'aggiornamento su supporti portatili come una memory stick, un CD-ROM o qualsiasi altra cosa. Aiuta molto a conoscere il loro ambiente in modo che tu possa personalizzare le istruzioni, dipende da quanto sono abili.

Se il tuo aggiornamento è impacchettato come un completo file di guerra (come hai detto), allora è un processo piuttosto semplice poiché stai semplicemente aggiornando l'intera applicazione, e non i singoli componenti. Ma entrambi possono essere fatti, anche se le patch possono essere più coinvolte. Se si dispone di uno stack standardizzato in ogni sito del cliente, è possibile scrivere qualcosa che sia automatizzato e robusto. Il diavolo è nei dettagli quindi più informazioni è possibile fornire sullo stack dell'applicazione, in particolare su quale sistema operativo e server di applicazioni si sta eseguendo e qual è la connettività con il mondo (Internet e anche i client degli utenti, ad es. è facile ottenere un file sul server da un client - ad esempio, se i client dispongono di accesso a Internet (ad esempio, e-mail, web) potrebbero salvare l'aggiornamento su una condivisione SMB sul server delle app e uno script lo preleva da lì) .

Spero che questo ti dia qualche idea.

    
risposta data 29.01.2014 - 13:12
fonte
1
what should the developer do in order to ensure that all the customers have the latest version of his software?

Assolutamente nulla tranne che per informare i responsabili della distribuzione dell'applicazione, che esiste una nuova versione.

Non è la responsabilità di uno sviluppatore di distribuire applicazioni.

Quindi, informa l'IT di detto cliente e invia loro il file .war. In questo modo hanno la possibilità di testare l'applicazione su qualunque cosa vogliono testarla prima di distribuirla. Spesso è visto come una cattiva forma per le applicazioni solo per aggiornarsi, ignorando l'IT.

    
risposta data 29.01.2014 - 14:00
fonte

Leggi altre domande sui tag