Sto cercando di implementare un servizio real time che stia in ascolto su eventuali cambiamenti che avvengono nel db.
lato client:
--------------------------------
chiamata ajax asincrona con timeout prefissato e, una volta scaduto, esecuzione di nuovo della stessa funzione
--------------------------------
lato server:
--------------------------------
while(!condizione_verificata){
sleep(1);
}
die(json_encode("risultato"))
--------------------------------
Ora supponiamo di avere un timeout lato client di 30 secondi; se in quei 30 secondi volessi: refreshare la pagina cambiare pagina o fare qualsiasi altra cosa devo aspettare che il loop lato server sia terminato il che rende inutilizzabile il servizio. Non volendo abbassare il timeout come faccio a forzare l'uscita dal loop?
Cercando qua e là ho letto che facebook google e altri usano uno schema di base che si chiama comet, che deve essere simile a questo (come logica di base eh !
)..
ringrazio chiunque provi a risolvere il problema anticipatamente
lato client:
--------------------------------
chiamata ajax asincrona con timeout prefissato e, una volta scaduto, esecuzione di nuovo della stessa funzione
--------------------------------
lato server:
--------------------------------
while(!condizione_verificata){
sleep(1);
}
die(json_encode("risultato"))
--------------------------------
Ora supponiamo di avere un timeout lato client di 30 secondi; se in quei 30 secondi volessi: refreshare la pagina cambiare pagina o fare qualsiasi altra cosa devo aspettare che il loop lato server sia terminato il che rende inutilizzabile il servizio. Non volendo abbassare il timeout come faccio a forzare l'uscita dal loop?
Cercando qua e là ho letto che facebook google e altri usano uno schema di base che si chiama comet, che deve essere simile a questo (come logica di base eh !

ringrazio chiunque provi a risolvere il problema anticipatamente