E' possibile
utilizzare l'
Istruzione DECLARE per definire tre tipi di
variabile:
- Esterna
- Le variabili esterne (definite con la parola chiave
EXTERNAL) sono dette anche
UPD (user-defined properties): consultare
UDP (User-defined property) in ESQL.
Esistono per l'intera durata di un flusso di messaggi e sono visibili per
tutti i messaggi che attraversano il flusso. Il valore iniziale (facoltativamente impostato dall'istruzione DECLARE) può
essere modificato, al momento della progettazione, mediante l'editor
Flusso di messaggi oppure, al momento della distribuzione, dall'editor di
BAR. I valori delle variabili non possono essere modificati da
ESQL.
- Normale
- Le variabili "normali" hanno la durata di un messaggio che
attraversa un nodo. Sono visibili solo per quel messaggio. Per definire una variabile
"normale", omettere le parole chiave
EXTERNAL e SHARED.
- Condivisa
- Le variabili condivise possono essere utilizzate per implementare una
cache in memoria nel flusso di messaggi. Consultare
Ottimizzazione dei tempi di riposta del flusso di messaggi. Le variabili condivise hanno una durata
elevata e sono visibili per più messaggi che attraversano un flusso;
consultare
Variabili a lunga durata. Esse esistono per la durata del processo
del gruppo di esecuzione, la durata del flusso o del nodo o la durata del
codice SQL del nodo che dichiara la variabile (qualunque sia la più breve).
Sono inizializzate quando il primo messaggio passa attraverso il flusso o il
nodo dopo l'avvio di ciascun broker.
Consultare anche l'opzione ATOMIC in
Istruzione BEGIN ... END. La struttura BEGIN ATOMIC è utile
quando è necessario apportare un numero di modifiche ad una variabile
condivisa ed è importante per evitare che altre istanze vedano gli stati
intermedi dei dati.