2015-10-27 12 views
5

in che modo procedere alla distribuzione di un'applicazione che utilizza la persistenza basata su immagini? Ecco il mio scenario: Scrivo un CMS in Smalltalk. In questo caso, i dati vengono letti principalmente, raramente scritti. Ora ogni volta che qualcuno scrive dei dati, posso scattare un'istantanea dell'immagine. Ma come dovrei introdurre una nuova versione della mia app e riportare lo stato dell'app in esecuzione? Non avrei bisogno di qualche forma di serializzazione/persistenza dei dati oltre all'immagine? GraziePersistenza basata su Smalltalk/Pharo - Come distribuire?

risposta

1

Il modo più semplice è semplicemente inserire una nuova versione utilizzando Monticello.

Ciò non dovrebbe influire sui dati esistenti, ad eccezione dei casi in cui è stata modificata la forma delle classi (ad esempio, rimozione o ridenominazione di instvars), e in questi casi è necessaria una strategia di migrazione indipendentemente dal meccanismo di persistenza .

E, naturalmente, se si esegue l'istantanea dell'immagine prima dell'aggiornamento, il rollback è semplice.

1

In Pier3 possiamo semplicemente convertire i dati CMS in codice e scriverlo come pacchetto Monticello. Possiamo scrivere contenuti in un'immagine Pier locale, eseguire il commit e trasmettere la nuova versione al server nel cloud. Lì eseguiamo un semplice ciclo che esegue il polling della directory git per trovare una nuova versione e caricarla.

Problemi correlati