Zerod: Schnelle Performance bei Ajax

Hallo,

ich bin gerade dabei mir so ein kleines RPG im Browser zu schreiben bei dem ich die Berechnungen per php script auf dem Server laufen lasse und die anzeige der Map per Javascript macht.

zum spiel:
Die Map besteht nur aus 30x20 kleinen 32px mal 32px großen Grafiken auf der sich der Spieler Rundenbasierend bewegen kann. Also er bewegt sich ein Feld nach vorne wartet 5 Sekunden und darf sich dann wieder in irgendeine Richtung bewegen.

Zur zeit hab ich das so realisiert, dass ein actionString per Ajax an ein php script übergeben wird und dieser interpretiert diesen, berechnet die aktuelle Position des Spielers und alle Veränderungen auf der Map bzw. im Level und gibt mir dann einen String etwa so zurück:

30x20:45;12;45;45;56;25;d4;2d;65;..(490)..54:26;568248,26;265485,45;265894

Das ist dann die Level Größe, 500 Zweierblöcke die das Level angeben und ein paar Aktionen die der Spieler ausüben kann.
Dieses wird dann vom Javascript eingelesen und als Map ausgegeben.
Ich hab versucht die Antwort des php scripts möglich kurz zu halten um eine schnelle antwort zu bekommen, damit es bei mehreren Spielern keine Performance Probleme gibt.

Kann ich das so lassen um möglichst Performance arm zu arbeiten oder kann man da noch was verbessern.

  1. PHP und Performance ist ein Thema, das immer wieder aufkommt. Verwende XCache oder ähnliche Konstrukte, um serverseitig das Beste herauszuholen - oder verzichte auf PHP und nimm eine performantere Sprache.

    Kürzere Antworten sind nur dann performanter, wenn deren Berechnung und Auswertuung nicht länger dauert.

    Gruß, LX

    --
    RFC 2324, Satz 7 (Sicherheit): Jeder, der zwischen meinem Kaffee und mir steht, gilt als unsicher.
    1. also ist es relativ egal wie groß bzw lang die zeichenketten sind die sich Ajax vom php script holt, wenn php schnell genug arbeitet?

      1. Fast korrekt. Ich gehe mal davon aus, dass deutlich weniger als 20kb übertragen werden - insofern ist zumindest ab 6.000er DSL-Netz die Generierung der Daten durch PHP der Flaschenhals, nicht die Übertragung.

        Gruß, LX

        --
        RFC 2324, Satz 7 (Sicherheit): Jeder, der zwischen meinem Kaffee und mir steht, gilt als unsicher.