si può?
mi chiedo questa cosa...
non voglio tartassare il database di queries, ergo, pensavo di inviarne qualcuna una-tantum solo quando l'utente fa qualcosa.
se però non fa nulla e dei dati devono comunque continuare a modificarsi, e però non volessi aggiornare il database ad ogni istante?
il problema sorgerebbe se l'utente sparisce e quindi il database non si aggiorna in quell'intervallo...
a quel punto mi chiedo, se riesco a SAPERE che l'utente è loggato allora aspetto di modificare il database fino a quando non vedo o che sta sloggando o sta sparendo...
mmm
non regge sto discorso...
immaginiamo un esempio standard:
c'era un gioco su facebook tanto tempo fa, quando ancora (ahimè) usavo facebook (ora ho smesso giuro! non kickatemi!!)
che aveva un sistema di personaggi con energia variabile nel tempo a causa dei combattimenti.
ora, il programmatore di quel gioco aveva a disposizione i server di facebook e quindi non si poneva il problema: ogni volta che il personaggio subiva un danno, aggiorna il database ed il gioco è fatto.
quando l'utente si rilogga, prende l'ultima energia salvata, fa un calcolo di quanto dovrebbe averne e via..
ma se non volessi stressare il database così tanto?
se aggiornassi l'energia solo in locale, che so, in una $_SESSION o in un $_COOKIE e solo quando l'utente slogga aggiornassi il db?
ecco, forse così ho spiegato il mio ragionamento...
ma poi, una query di aggiornamento del genere stressa tanto il db?
se però trasferissi anche solo 1kb di dati per ogni query del genere, se lo faccio 20 volte in un combattimento, faccio che so 10, 15 combattimenti, salgo a 200Kb se però lo faccio anche solo con 10 amici... iniziano ad essere quasi 2 mega di dati che ogni 10-20 secondi si spostano verso il server...
addio banda in pochi giorni...
o no?
è sbagliato il mio discorso?
come potrei ottimizzare la questione secondo voi?