Devo serializzare un enorme albero di oggetti (7.000) nel disco. Originariamente abbiamo mantenuto questo albero in un database con Kodo, ma faremmo migliaia e migliaia di query per caricare questo albero in memoria e ci vorrebbe una buona parte del tempo disponibile per l'universo locale.Suggerimenti per la serializzazione degli oggetti Java
Ho provato la serializzazione per questo e in effetti ottengo un miglioramento delle prestazioni. Tuttavia, ho la sensazione di poter migliorare ciò scrivendo il mio codice di serializzazione personalizzato. Devo caricare questo oggetto serializzato il più velocemente possibile.
Nella mia macchina, la serializzazione/deserializzazione di questi oggetti richiede circa 15 secondi. Quando li si carica dal database, ci vogliono circa 40 secondi.
Qualche consiglio su cosa potrei fare per migliorare questa performance, tenendo conto del fatto che, poiché gli oggetti si trovano su un albero, si fanno riferimento l'un l'altro?
Ho eseguito il percorso Externalizable in passato e ho ottenuto un aumento delle prestazioni di circa il 20-23% nella serializzazione/deserializzazione di grafici di oggetti di grandi dimensioni. La quantità di lavoro richiesta per questo sarà proporzionale al numero di oggetti che devi personalizzare. – Robin
Basta controllare http://code.google.com/p/fast-serialization/. Problema risolto :-) –