Ritentività

Lo scopo della ritentività è quello di fornire uno strato di memorizzazione dei cambiamenti apportati al progetto a runtime. Dentro i database di ritentività viene memorizzato l’elenco delle modifiche rispetto al progetto di partenza. Il processo di memorizzazione è lineare nel tempo e consiste ad esempio nella creazione di un nodo, nell’aggiunta di references e nel cambiamento del valore delle variabili; i salvataggi seguono l’ordine in cui le azioni si compiono, come se si trattasse di un ‘repository di progetto’. Storage multipli sono implementabili, tuttavia è importante che monitorino parti indipendenti e che non abbiano intersezioni gli uni con gli altri.

Parametri

  • Radici di sottoalbero: Un database di ritentività osserva le modifiche che vengono apportate a un sottoalbero del progetto; le modifiche che riguardano i sottoalberi che sono implementati vengono tutte memorizzate. Un sottoalbero può essere, in uno scenario tipico, un’intera cartella del progetto () ad esempio ‘Utenti’).

  • Ritardo di scrittura: Questa proprietà serve a definire con che frequenza temporale effettuare i salvataggi; il default è zero, poiché, appena è rilevata una modifica, essa verrà salvata immediatamente, compatibilmente con i tempi tecnici di scrittura.Attraverso il Ritardo di scrittura è possibile impostare un ritardo espresso in millisecondi, al termine del quale verrà garantita la scrittura dei dati precedentemente impacchettati. Lasciare l’opzione a zero millisecondi permette di ottenere un salvataggio in tempo reale; va considerata tuttavia la possibilità che il disco subisca una maggiore dose di stress. Specificare un ritardo di scrittura maggiore, invece, espone il progetto alla perdita dei dati compresi nell’intervallo di ritardo impostato.

  • Observer dei cambiamenti abilitato: In certe esecuzioni del progetto è possibile effettuare modifiche che non si intendono salvare. In questo caso il sistema ‘disattiva’ il rilevamento delle modifiche per le esecuzioni. Se impostato a ‘no’, lo store di ritentività applica solamente le modifiche già memorizzate senza rilevare quelle future. Questa modalità è utile se, ad esempio, si vuole usare lo strato di ritentività salvato solo per applicare e ripristinare delle modifiche iniziali, senza voler aggiungerne altre.

La ritentività non si applica solamente alle variabili, ma anche al modello in generale. Quindi può essere utile anche nella gestione utenti.

Vedi anche

Esempi applicativi

Creare, modificare ed eliminare utenti