Sono appena stato profiling del codice dove ho incrementare alcuni contatori di frequenza con il seguente codice:Esiste un buon modello per riutilizzare le query di Morphia?
Datastore ds = ...
final Query<Unit> query = ds.createQuery(Unit.class);
query.field("text").equal(text);
query.field("langCode").equal(lang.getCode());
UpdateOperations ops = ds.createUpdateOperations(Unit.class);
ops.inc("frequency", value);
ds.update(query, ops, false);
La creazione della query richiede quasi il 50% del tempo di esecuzione, e mi piacerebbe riutilizzare il lavorare in qualche modo. È sicuro salvare gli oggetti e ops
in un ThreadLocal e chiamare nuovamente query.field("text").equal(text)
per sostituire il campo "testo"? Sembra anche che la convalida stia assorbendo circa il 30% del tempo totale.