Thread Performance beim Parsen von Bildern (9 answers)
Opened by bony at 2004-05-04 03:29

bony
 2004-05-04 03:29
#2344 #2344
User since
2004-04-30
18 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hallo,

auf meiner privaten Homepage habe ich ein passwortgeschütztes Fotoalbum. Die User sind in unterschiedliche Gruppen eingeteilt und haben unterschiedliche Zugriffsrechte auf die verschiedenen Alben. Nun sollen die Bilder besser vor unberechtigtem Zugriff geschützt werden. Dazu werden die Bilder per CGI-Skript aus einem Verzeichnis geholt, das nicht im Webpfad liegt. Dazu wird ein Cookie mit der Session-ID gelesen. Zum Session-Handling benutze ich bisher Apache::Session::MySQL. Um auf die Daten aus der Session zugreifen zu können, wird zunächst das Session-Objekt instanziert:
Code: (dl )
1
2
3
4
tie %session, 'Apache::Session::MySQL', $sid, {
Handle => $dbh,
LockHandle => $dbh,
};

Dann wird kontrolliert, ob das Account überhaupt aktiviert ist, ob die Gruppe, in der der User ist, überhaupt Berechtigung hat, auf dieses Album zuzugreifen und wenn das alles passt, wird der Pfad zu den Bildern aus der DB gelesen und das entsprechende Bild eingeblendet.
Nun befinden sich auf einer Albumseite maximal 12 Thumbnails. Das Programm muss natürlich für jedes einzelne Thumbnail aufgerufen werden. Nun schwant mir, dass das ganz schön zu Lasten der Performance geht. Insbesondere das Binden der Session scheint mit nicht sehr performant.

Würde die Rechenlast geringer, wenn ich hier nicht Apache::Session::MySQL nutze und die nötigen Daten per "eigener" Datenbankabfrage hole?

Der Text der Session hat ja ein wenig ein komisches Format. Sieht ungefähr folgendermaßen aus:
Code: (dl )
1
2
3
...
ChristophsidLogin esidHtml 1sidUsrId 1sidGrpId e sidStatus ChristophsidFname
...

Leider steige ich nicht ganz dahinter, welche Trennzeichen für Bezeichner und Wert verwendet werden, um den Text mit regulären Ausdrücken aufzudröseln (unter Windows erscheinen immer nur so kleine Kästchen). Weiß da vielleicht jemand bescheid?

Gibt es bessere Wege, die Bilder vor unberechtigtem Zugriff zu schützen?

Gruß
Christoph

View full thread Performance beim Parsen von Bildern