DB-Entlastung durch zwischengespeicherte Resultate

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • DB-Entlastung durch zwischengespeicherte Resultate

    Ich tüftle nun schon einige Zeit an einem grösseren Projekt herum (nur gedanklich, noch kein Prototyp). Ein Problem war bisher immer, dass die User aufgrund der fehlenden Echtzeit (PHP + MySQL) verleitet werden, oft auf den Refresh-Button zu klicken (um zu sehen, ob sich an einem Status etwas geändert hat). Dies ist insbesondere deshalb ein Problem, weil jede Seitenanfrage grössere DB-Abfragen tätigt, was dann zu einer befürchteten DB-Auslastung führen könnte.

    Nun habe ich vor kurzem von der Idee erfahren, die ausgegebenen (oder auszugebenden) HTML Seiten in einer eigenen Tabelle zwischenzuspeichern, so dass die komplizierten DB-Abfragen nur ein mal durchgeführt werden müssen. Wenn man das jetzt noch ein wenig weiter zieht, so müsste es ja auch möglich sein, eine solche HTML Seite in einem File oder einer Sessionvariable zu speichern. Da würden dann die DB-Abfragen gleich ganz entfallen.
    Wie seht ihr das? Welche Lösung bringt die beste Performance? Gibt es vielleicht noch andere Ansätze (oder ist das Ganze eh irrelevant, weil der Flaschenhals woanders liegt)?

  • #2
    eine statische html-seite, welche z.b. jede minute generiert wird, ist sicherlich nicht verkehrt.

    aber es kommt halt immer auf den tatsächlichen anwendungsfall an.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Naja, konkret geht es um eine abwechselnde Interaktion zweier Benutzer. D.h. der eine startet einen Prozess, macht dann seine Eingaben, dann übergibt er quasi dem anderen, welcher bisher warten musste. Dieser kann nun seine Änderungen und Ergänzungen anbringen und es dem Ersten wieder zurückschicken. Der macht dann wiederum seine Änderungen usw. Dies dauert so lange, bis beide mit dem Status zufrieden sind. Da wird dann der Prozess abgeschlossen. Ich werde auch eine Funktion einbauen, welche den Onlinestatus des Gegenübers anzeigt, nicht dass man tagelang vergeblich auf ne Antwort wartet.

      Im Idealfall würde ein Benutzer natürlich bei Eingabe der Daten des anderen Benutzers automatisch benachrichtigt, aber das ist mit dem Browser als Client so wohl nicht möglich. Eine Clientsoftware ist leider auch nicht ideal, da das Ganze unbedingt über jede Firewall hinweg funktionieren muss (und meine Programmierkenntnisse nicht ausreichen um dies zu bewerkstelligen).

      Kommentar

      Lädt...
      X