Per aggiornare i componenti senza perdita di servizio

In un ambiente in cluster, un aggiornamento in sequenza consente di ridistribuire un'applicazione con una perdita di servizio e sessioni minima. Per sessione si intende qualsiasi artifact replicabile, ad esempio:

È possibile utilizzare il load balancer e più cluster per aggiornare i componenti di GlassFish Server senza perdita di servizio. Un componente può essere, ad esempio, un computer JVM, il software di GlassFish Server o un'applicazione Web.

È possibile eseguire l'aggiornamento in sequenza con carichi da leggeri a moderati. La procedura ha una durata di circa 10-15 minuti per ciascuna istanza di GlassFish Server.

Le applicazioni devono essere compatibili in tutto l'aggiornamento. Devono funzionare in modo corretto nella fase di transizione, ovvero quando alcune istanze eseguono ancora la versione precedente mentre altre eseguono la nuova. Nella versione precedente e in quella nuova deve essere disponibile la stessa forma delle classi serializzabili che costituiscono i grafici di oggetti memorizzati nelle sessioni (ad esempio, le variabili di istanza non transitorie). Se è necessario modificare la forma di queste classi, lo sviluppatore dell'applicazione deve garantire che la serializzazione funzioni in modo corretto. Se l'applicazione non è compatibile nel corso dell'aggiornamento, il cluster deve essere arrestato per effettuare una ridistribuzione completa.

Questo approccio non è possibile se l'aggiornamento dell'applicazione implica una modifica allo schema di database dell'applicazione.


Attenzione:

Per evitare rischi di mancata corrispondenza tra le versioni in caso di failover di una sessione, aggiornare contemporaneamente tutte le istanze di un cluster. In caso contrario una sessione potrebbe eseguire il failover in un'istanza in cui sono in esecuzione versioni diverse dei componenti.

Eseguire il task separatamente in ogni cluster. Il cluster rappresenta un limite sicuro per i failover di sessione per le istanze del cluster. Le sessioni di un cluster non eseguono mai il failover in sessioni di un altro cluster. In questo modo si evita il rischio di mancata corrispondenza delle versioni.

  1. Arrestare il cluster.

    Vedere Per arrestare un cluster.

  2. Aggiornare il componente nel cluster arrestato.

  3. Avviare il cluster.

    Vedere Per avviare un cluster.

Vedere anche
Copyright © 2005, 2013, Oracle and/or its affiliates. All rights reserved. Legal Notices