Mailinglisten-Archive |
Hi Lutz, Lutz Zetzsche schrieb: > ehrlich gesagt, sind Deine Angaben etwas zu allgemein, um Dir konkret > weiterhelfen zu können. Genauere Gedanken habe ich mir darüber noch nicht gemacht. Wollte erst die grundlegenden Dinge klären, wie ich es schon geschrieben hatte. Ich hatte geplant die Punktestände usw direkt beim Benutzer in der Datenbank zu speichern, um unnötige Datenbankabfragen zu sparen. Das heißt bei jedem vollendeten Spiel würde ich die Punktestände beim Benutzer anpassen, was ggf. auch Fehler verursachen kann, aber gut so ist das mit der Redundanz. > Allgemein betrachtet ist es so, daß Du vermeiden muß, aus einem Problem > in ein anderes zu flüchten. Damit meine ich: Bei steigenden > Nutzerzahlen mußt Du natürlich auf der einen Seite auf die entstehende > Serverlast durch direkte Datenbankzugriffe achten, mußt aber auf der > anderen Seite im Auge behalten, daß damit auch steigendende Datenmengen > einhergehen, die irgendwann eben nicht mehr beherrschbar sind, vor > allem nicht mehr zu einem einmal täglichen Aktualisierungszeitpunkt. Naja, man könnte die Aktualisierung der Ranglisten ja auch öfters vornehmen, daran sollte es nicht liegen. > Es gilt also, auf der Basis der konkreten Anforderungen den goldenen > Mittelweg zu finden, welcher schon bei der Datenbankkonzeption ansetzen > muß. Dein Ziel muß es sein, so wenig Daten wie möglich mit so wenig > Operationen wie möglich (nach) zu verarbeiten. Der erste Ansatzpunkt > ist also Daten- und Aufwandsvermeidung. Danach tendiere ich dazu, im > Prinzip immer live zu aktualisieren, aber durch Caching für einen > bestimmten Zeitraum lesende Datenbankabfragen zu minimieren. Der > nächste Schritt wäre dann schon, die Hardware aufzurüsten. :-) > Im Übrigen möchte ich mal einen Spieler sehen, der sich mit Statistiken > zufrieden gibt, die nur einmal täglich aktualisiert werden. Der Ansatz > ist rein aus dieser Sicht schon nicht praktikabel. :-) Ja okay. Das ist sicherlich ein Grund. Allerdings befürchte ich, dass ein live-Ranking zu viel Aufwand bedeutet. Das hieße nämlich, dass nach jedem vollendeten Spiel die Rangliste komplett neu berechnet werden müsste, also die Scores von Benutzern geholt und neu in der Rangliste zusammengesetzt werden müssten. Bei erhöhter Benutzerzahl auch gleichwachsender Aufwand. Danke erstmal für eure Impressionen. Beste Grüße, Andreas Fay
php::bar PHP Wiki - Listenarchive