[PHP]Session für mehrere Anwender



  • Moin,
    gibt es in PHP eigentlich irgendwie die Möglichkeit Daten für mehrere User zu speichern?
    Also ich habe ein Spiel wo sich zwei Spieler gegenüber stehen und gegenseitig angreifen, erstmal ganz simpel ohne Ajax usw.

    Was ich jetzt brauchen würde, wäre dass irgendwie die Daten dieses Kampfes (wie viel Leben hat jeder noch übrig, wer dran ist usw) vorzugsweise im ram zu speichern und auszulesen, so dass sie von beiden Spielern lesbar sind.
    Die Datenbank mit Abfragen zu fluten für derartig schnell veraltende Daten kommt mir irgendwie falsch vor, mit Dateien arbeiten ist vermutlich noch langsamer und Sessions sind ja immer nur für einen User.

    Gibt es da irgendwas in der Richtung, was besser geeignet ist?



  • [...] mit Dateien arbeiten ist vermutlich noch langsamer [...]

    Sessions und DBs sind auch nur Dateien *g*

    Zum Thema:
    Schon mit session_start() und teilender Session-ID (session_id() genau anschauen!) versucht?

    Einmal identifiziert müssten beide nur die selbe SID per session_id() angeben und die Sache ist geregelt. Soweit die Theorie.



  • Stimmt schon, aber eine Datenbank ist da dann doch um einiges effizienter als eine Datei, weil sie etwa daten im ram zwischenpuffert, man sich nicht mit locks rumschlagen muss und die db-datei nicht bei jeder Abfrage geöffnet, verändert und geschlossen wird.

    Sessionid teilen habe ich auch überlegt, aber neben der Tatsache, dass mir das nicht ganz geheuer ist, kann man so weit ich weiß immer nur eine session gleichzeitig benutzen und die ist schon für Login&Co belegt.

    *edit*
    ah hab nomma bissl rumgelesen, was zufriedenstellend funktionieren sollte sind sog. in memory Datenbanken, also Datenbanken die nur im ram arbeiten.
    praktischerweise kann mysql das sogar:
    http://dev.mysql.com/doc/refman/5.1/de/memory-storage-engine.html


Anmelden zum Antworten