Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    20

    Controllo Status. (php+ajax+mysql)

    Buon Salve a tutti voi.
    Ho un quesito (un altro) da porre a chiunque legga questo post XD.

    Sto cercando di creare un giochino multiplayer online che prevede uno scontro tra due persone nel momento in cui una delle due decide di scontrarsi con quest'altra. Mi spiego meglio.

    E' il turno del giocatore A.
    Il giocatore A decide di scontrarsi con il giocatore B, e fin qui nulla di così assurdo.

    La mia domanda vera è: come posso far in modo usando solo (php-ajax-mysql) che il giocatore B abbia una specie di "notifica" in tempo reale per sapere che il giocatore A lo sta attaccando?

    Ho pensato a un controllo di uno stato in una tabella del DB, però per essere più o meno istantaneo questo controllo dovrebbe essere fatto minimo ogni 3 secondi, e onestamente mi sembra un po' tanto mandare query ogni tre secondi per controllare, o no?

    Può essere che esista un metodo alternativo che non conosco che non preveda il controllo ripetitivo di qualche dato ogni boh secondi?

    Help me

  2. #2
    Utente di HTML.it L'avatar di Luke70
    Registrato dal
    Jul 1999
    Messaggi
    767
    non credo tu abbia alternative. Ovviamente cerca di ridurre la quantità di dati passati (json?).
    Forse una chiamata ogni 10 secondi potrebbe essere ragionevole

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    20
    quindi l'unica soluzione sarebbe di mandare ogni 10(o meno..) secondi una query che controlli che non ci siano attacchi in corso?

    Ovvero nel db ci sarà questo:
    [nome] [stato]
    GiocatoreA 0

    GiocatoreB 1

    GiocatoreC 0


    la query mandata ogni 10 secondi controlla la colonna "stato" finché non trova un "1", e se c'è manda la notifica al giocatore corrispondente, in questo caso B.

    Ma in questo modo, considerando che per questo gioco ci sono in ballo molte altre query e il numero di giocatore è un massimo di 14, non rischio di caricare troppo il database? O è un numero normale?

    Mi chiedevo, inoltre, se è possibile sfruttare un file XML ? Non sono per niente pratico a riguardo, ma tipo, se si crea dinamicamente un file xml nel ftp, potrei controllare lì gli "stati" senza mandare query mysql, o sbaglio?

    Datemi un'idea pratica pls

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    20
    Ok, ci sono "avanzamenti" nel progetto.
    Ho spostato tutto dal database mysql ad un file xml che viene modificato ogni volta che serve.

    Quello che mi chiedo adesso è: controllare ogni 10 secondi una cella nel database mysql con un'apposita query è meglio o peggio di controllare ogni 10 secondi un valore nel file xml?

    Quale metodo richiede più risorse?

    Mandando query ogni 10 secondi al db si aumenta il lavoro del db rischiando che "crashi" per le troppe query, mandare comandi php per controllare il file xml può provocare "crash" di qualche genere?


    Scusate la scassatura di maruns

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.