Mailinglisten-Archive |
Hallo Andreas, Andreas Heigl schrieb am Donnerstag, 7. Oktober 2004 um 16:33: > Aber ich dachte es gäbe doch einen anderen Weg. out-of-the-box nicht, IMHO. > Gibt es einen groben Wert, wieviel schneller eine Sessionverwaltung in einer > Datenbank (MySQL) gegenüber der Standardverwaltung ist? Hmm, du meinst wohl eher, "wieviel langsamer"? ;) Wenn du die Session in der DB speicherst und dafür reguläre Tabellen (kein Heap-Tabellen, aber das wäre bei deinen Grössen wohl nicht ratsam) nimmst, kommen die genauso auf Platte, wie beim eingbauten Standard-Files-Handler. Zuzüglich den Overhead den der SQL-Parser benötigt. In den meisten Fällen ist das langsamer. ;) Um Sessions zu beschleunigen greift man eher zu shared-memory (msessions u.ä.) und erspart sich das Speichern auf physikalischen Medien. Aber auch hier wird deine Anforderung von mehreren MB sicher schnell die Server-Kapazitäten sprengen, oder? Am besten misst du einfach mal nach, wie lange das Einlesen eines Session-Files mit allen serialiasierten Objekten dauert. Dito in einer DB mit getrennten Blobfeldern für einzelne Objekte (Variablen). Letzlich hängt ein eventueller Geschwindigkeitsgewinn ja davon ab, wie selektiv du einzelene Objekte aus der DB für einzelene Seiten zur Verfügung stellen kannst. Wenn du z.B. nur 1 Objekt mit 500 kb brauchst und dir dabei bspw. das Laden von 20 Objekten und Variablen mit insgesamt 5 oder 6 MB sparst, könnte das schon was bringen. HTH Frank
php::bar PHP Wiki - Listenarchive