Noto dei tempi di rendering lunghi con jbuilder per la generazione di un
json piuttosto banale e mi chiedevo se qualcuno si imbattuto in
problemi
simili.
Sto leggendo di questo:
Qualcuno lo usa?
Il 60% del tempo di media speso ne rendering di un array json di
oggetti
con due o tre attributi. C’ anche un aprtial di mezzo che uso per render
le cose DRY.
il problema si verifica spesso, non ho avuto esperienza diretta con
jbuilder ma da qualche issue vista su github sembra avere gli stessi
problemi di rabl (con cui ho pi familiarit).
Solitamente il problema di quelle librerie sono lenorme numero di
oggetti ruby creati e di codice ruby eseguito nel passaggio da dati a
json. Cerca di non usare troppi helper della
libreria per fare il render (per esempio prova senza partial) e cerca di
dargli in pasto degli oggetti semplici (per esempio se i dati vengono da
ActiveRecord cerca di usare .select() per
limitare il numero di campi ritornati dal db).
active_model_serializers a mio avviso funziona molto meglio ma devi
"rassegnarti ad avere un approccio diverso per cui potrebbe risultarti
pi complesso fare le stesse cose.
active_model_serializers pu presentare problemi simili ma per esperienza
gli helper funzionano molto meglio ed in generale puoi stare pi
tranquillo che da un giorno allaltro
le performance dellapp non degradino in maniera significativa.
Fammi sapere come va che questo problema mi ha assillato parecchio
ultimamente
–
Matteo L.
Il giorno 21/lug/2014, alle ore 11:57, Fabrizio R. [email protected] ha scritto:
Grazie, avevo pensato di passare a active_model_serializer, ma devo dire
che la sintassi di jbuilder è comoda. Per ora ho tolto un partial e le
performance sono migliorate di molto. Pare che usare partial in jbuilder
perggiori molto le performance.