Domanda

Ho una piccola applicazione Web JSF su Was7.0 con una sola pagina ma una base di utenti abbastanza grande.

Posso dichiarare tutti (1) fagioli come ambito di richiesta e utilizzare anche javax.faces.state_saving_method client senza imbattersi in problemi di memoria sul server utilizzando una sessione non scadente?

Come funzionerebbe per applicazioni più grandi?

Motivo: sto cercando di risolvere un problema in cui è 7.0 rapidamente mentre IBM si occupa del mio PMR.

Modifica: a questo punto non ho le risorse per provare a misurarlo da solo e lascerei l'app così com'è (sperando di non infastidire troppi utenti).

È stato utile?

Soluzione

Non devi necessariamente cambiare l'ambito del fagiolo. Mantieni i fagioli nell'ambito a cui appartengono. Solo se stai abusando di fagioli con ambito per tenere i dati con ambito, allora la storia cambia. La richiesta o la visualizzazione dei dati con ambito appartengono alla richiesta o alla visualizzazione di fagioli con scoppi, non fagioli con ambito. I fagioli con ambito di sessione dovrebbero essere utilizzati solo per contenere dati di sessione, come l'utente loggato, le sue preferenze a livello di sito, la lingua scelta, ecc.

Modifica del metodo di salvamento statale dal server a client risolverà sicuramente il ViewExpiredException Sulle visualizzazioni la cui sessione di supporto è stata scaduta. Diminuirà l'utilizzo della memoria del server ma aumenterà l'utilizzo della larghezza di banda della rete di Server. Ma se stai già usando GZIP (o non lo era già; quindi accendilo), allora l'impatto è piuttosto minore.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top