Quando un utente si logga nel mio sito, vengono prelevate delle variabili relative a quell'utente dal database. Alcune di queste variabili devono essere aggiornate periodicamente (aumentano col passare del tempo), quindi in pratica l'utente ogni volta che cambia pagina deve poter accorgersi di questi cambiamenti.
Posso scegliere due strade: prelevare al login le variabili più il tempo attuale ($time1), salvare tutto in una sessione e incrementare queste variabili a ogni cambio pagina in base alla differenza tra il tempo attuale ($time2) e quello memorizzato precedentemente ($time1). L'aggiornamento di queste variabili nel database invece viene effettuato al login (sempre in base a una data memorizzata nel db stesso).
L'altra possibilità e quella di alleggerire la sessione ma aumentare il numero di query, effettuando appunto query di select e update a ogni cambio pagina.
Quale delle due strade è più efficiente in termini di prestazioni del sito? Fino ad ora ho usato la prima soluzione ma ciò che mi fa venire un dubbio è il fatto che nella sessione dovrei memorizzare parecchie variabili (sono arrivato anche a più di 20). Sono alle prime armi col php, e non vorrei che sia una scelta poco efficiente quella di usare parecchie variabili nella sessione. D'altra parte però non vorrei sovraccaricare il db di query, con conseguente rallentamento delle stesse.