phpbar.de logo

Mailinglisten-Archive

[php] Performancefrage imagecreate

[php] Performancefrage imagecreate

Frank Dell php_(at)_phpcenter.de
Sat, 18 May 2002 14:38:50 +0200


Hallo,

Images (jpg + gif) sollen per Formular-Upload in einem Verzeichnis
gespeichert werden. Der Image-Name wird in einer MySqL-DB gespeichert. Je
noch Bedarf soll die Grafik in zwei Größen (width, height) angezeigt werden.

Es bieten sich mir zwei Lösungsmöglichkeiten an:

1. Direkt nach dem Upload werden von der "Original-Grafik" zwei Kopien in
den jeweiligen Zielgrößen gezogen (imagecreate) und ebenfalls in dem
Verzeichnis gespeichert. Die Dateiname der Kopien werden mit Größenangaben
in der DB gespeichert.

Vorteil dieser Methode:
+ Grafiken stehen beim Aufruf sofort zur Verfügung

Nachteil:
- Im Verzeichnis liegen mehrere Ausfertigungen der gleichen Grafik
(Speicherplatzverbrauch)
- In den Datenbanktabelle brauche ich mehrere Spalten (name,width,height)
für jede Ausfertigung (Übersichtlichkeit)
- Wird einmal eine bestimmte (zusätzliche) Grafik-Größe benötigt, steht sie
nicht zur Verfügung. (Mangelnde Flexibilität)


2. Die Originaldatei wird im Verzeichnis gerspeichert, der Dateiname in der
Datenbank. Beim Aufruf wird eine Kopie der Originaldatei gezogen und in der
gewünschten Göße eingefügt.

Vorteile:
+ Abspeicherung nur einer Grafik im Verzeichnis
+ Übersichsichtliche Datenbanktabelle
+ Eine Kopie kann in der jeweils benötigten Größe erstellt werden (hohe
Flexibilität)

Nachteil.
- Die Grafik steht beim Seitenaufruf noch nicht zur Verfügung. Zunächst muß
die Originaldatei kopiert und dann in der gewünschten Größe erstellt werden
(imagecreate).


Jetzt stehe ich vor der Frage ob Lösung 1 oder 2. Tendenziell würde ich
Lösung2 vorziehen, jedoch bin ich mir in der Performance-Frage nicht sicher.
Wie sieht das aus, führt Lösung2 zu bedeutenden Geschwindigkeitsverlusten?
In der Spitze werden bei einem Seitenaufruf ca. 10 Grafiken auf diese Weise
eingefügt.

Bitte sagt mir Eure Meinung. Ich sag schon mal Danke.

Viele Grüße
Frank Dell


php::bar PHP Wiki   -   Listenarchive