Skip to content

Latest commit

 

History

History
65 lines (43 loc) · 3.83 KB

File metadata and controls

65 lines (43 loc) · 3.83 KB

Tracciamento su Database

Ogni richiesta ricevuta dal gateway viene gestita tramite un processo riassumibile nella figura :numref:`transazioniDBFasiDefaultFig` in cui il tracciamento, nella configurazione di default, avviene in fondo al processo dopo aver consegnato la risposta al client. Nel caso non fosse possibile attuare il tracciamento richiesto (es. connessione al database non disponibile) l'anomalia viene registrata nei log di GovWay e si attiva il processo di failover in cui la traccia verrà serializzata su filesystem per poi essere riversata nella base dati in un successivo momento da un timer dedicato al recupero.

../../_figure_console/TracciamentoDBFasiDefault.png

Fasi di tracciamento su database: configurazione di default

Nel caso siano state attivate ulteriori fasi di tracciamento descritte nella sezione :ref:`tracciamentoTransazioniFasi`, il processo di failover si attiva solamente in caso di problematiche di tracciamento durante l'ultima fase dopo che la risposta al client è già stata consegnata (figura :numref:`transazioniDBFasiCustomFig`).

../../_figure_console/TracciamentoDBFasiCustom.png

Fasi di tracciamento su database: configurazione personalizzata

La figura :numref:`transazioniDBFasiErrorFig` mostra uno scenario in cui il tracciamento su database non va a buon fine già nelle prime fasi ed essendo configurate come 'bloccanti' la transazione terminare con errore e viene restituito un fault al client. Nell'ultima fase viene attivato il processo di failover.

../../_figure_console/TracciamentoDBFasiError.png

Fasi di tracciamento su database: configurazione personalizzata con errore durante il tracciamento con fasi bloccanti

La figura :numref:`transazioniDBFasiErrorFailOverFig` mostra uno scenario simile al precedente dove però le fasi sono configurate come 'non bloccanti' e quindi il mancato tracciamento non inficia sulla corretta gestione della richiesta. Nell'ultima fase viene attivato il processo di failover.

../../_figure_console/TracciamentoDBFasiErrorFailOver.png

Fasi di tracciamento su database: configurazione personalizzata con errore durante il tracciamento con fasi non bloccanti

La configurazione del processo di failover è personalizzabile a livello di configurazione locale in '/etc/govway/govway_local.properties' (assumendo sia /etc/govway la directory di configurazione indicata in fase di installazione).

Di seguito un esempio di configurazione effettuabile in cui vengono riportate tutte le opzioni presenti con i valori di default del prodotto.

# ================================================
# Directory dove vengono serializzate le transazioni non registrate
org.openspcoop2.pdd.resources.fileSystemRecovery.repository=/var/govway/resources

# Indica se è abilitato il livello di debug durante la gestione
org.openspcoop2.pdd.resources.fileSystemRecovery.debug=false

# Indicazione se il timer dedicato al riversamento delle tracce serializzate su db è attivo o meno
org.openspcoop2.pdd.resources.fileSystemRecovery.enabled=true

# Parametri del timer
# - il timeout indica una unità di misura in secondi
# - dopo il numero di tentativi indicati in maAttempts la traccia verrà spostata in una directory 'dlq'
org.openspcoop2.pdd.resources.fileSystemRecovery.timeout=300
org.openspcoop2.pdd.resources.fileSystemRecovery.maxAttempts=10
# ================================================