implementazione JBoss, senza server di riavvio
-
09-10-2019 - |
Domanda
Ho un problema per quanto riguarda la distribuzione del software. Stiamo usando JBoss 4.2.3.
Per favore fatemi spiegare un processo di distribuzione manuale tipica che sto facendo ora:
- EAR Copia, guerre e vasetti al server.
- Server Stop.
- EAR Copia, le guerre e vasetti di implementare cartella.
- Esegui script di aggiornamento del database.
- del server di avvio.
Ero alla ricerca di un modo per evitare il riavvio del server. Perché ha causato un sacco di problemi e un sacco di disagi. Per esempio, ho dovuto inviare email a un grande elenco al fine di programmare un server i tempi di fermo.
L'altro problema è che abbiamo 2 server che comunicano tra loro a distanza tramite SOAP, se un server va giù, è probabile che causare alcuni problemi di sincronizzazione dei dati.
Il dispiegamento calda non funzionava proprio per me. A volte ho avuto classe caricatori eccezioni, e, talvolta, problemi di cache.
I stava prendendo in considerazione il clustering, ma non del tutto sicuro se avrebbe funzionato o no.
Qualcuno ha qualche esperienza simile? Eventuali soluzioni o suggerimenti?
Molte grazie in anticipo.
P.S. dovrei pubblicare questo su serverfault invece di StackOverflow? (Io preferisco qui perché io sono uno sviluppatore:)
Soluzione
Se hot-distribuzione non funziona per voi, e si riavvia non sono un'opzione, quindi l'unica altra cosa che posso suggerire è Clustering con failover - eseguire due server piuttosto che uno, con le vostre richieste SOAP con bilanciamento del carico su di essi tutti e due . Quando è necessario eseguire un aggiornamento, di arrestare un server, l'aggiornamento, avviarlo, l'arresto il 2 ° del server, l'aggiornamento che, e iniziare il backup.
Se lo fate a destra (è difficile, ma fattibile), allora non avete down-tempo. È necessario assicurarsi che i server possono coesistere durante gli aggiornamenti in sequenza, e assicurarsi che l'aggiornamenti del database sono compatibili, ma che possono tutti essere raggiunto.