Effizienz bei Abfrage, ob thumbnail vorhanden ist

DrBonsai

Mitglied
Hallo zusammen,

ich stelle auf einer Plattform die Möglichkeit zur Verfügung, angelegte Datensätze mit Bildern zu versehen. classic!

Beim Upload per Formular im Backend wird ganz klassisch eine verkleinerte Version der hochgeladenen Bilder erstellt, die auf Vorschauseiten genutzt werden, um den Traffic, Ladezeiten etc. gering zu halten.

Man kann Datensätze aber auch per Impoprtdatei (Textdatei, die die benötigten Informationen und absoluten Pfade zu extern gespeicherten Bildern enthält) anlegen.

In diesem Fall werden die Vorschaubilder erst innerhalb eines Tages nach dem Upload erstellt.

Datensätze sollen aber sofort aktiv sein, wenn diese hochgeladen wurden.

Deshalb gehe ich momentan so vor, dass ich prüfe, ob für ein Bild bereits ein Thumbnail existiert. Wenn ja, wird dieses auf den Übersichtsseiten genutzt. Wenn nein, wird eben das hochgeladene, große Bild verwendet.

Meine Frage lautet:
Ist das effizient, oder würdet ihr andersvorgehen?

Dadurch, dass meine Abfragen, ob bereits ein Vorschaubild existiert und die damit verbundenen Ergebnisse alle serverseitig sind, denke ich, dass ich mir hier prinzipiell keine Sorgen machen muss.
Aber wird die Abfrage is_file

PHP:
if(is_file("img/".$php_query_array['client_id']."/thumb_".$php_query_array['article_id']."_1".$extension))
		{
		$array_images_to_show_on_site[] = "img/".$php_query_array['client_id']."/thumb_".$php_query_array['article_id']."_1".$extension;
		}
		else
			{
			$array_images_to_show_on_site[] = $php_query_array['main_image'];
			}

von php genau so schnell ausgeführt, wie bspw. die Abfrage if(isset($variable))? Oder muss ich mit signifikant höheren Ladezeiten rechnen, weil is_file in Abhängigkeit von der Dateigröße vllt. irgendwann mal viel Zeit beansprucht?

mfg,
David
 
von php genau so schnell ausgeführt, wie bspw. die Abfrage if(isset($variable))? Oder muss ich mit signifikant höheren Ladezeiten rechnen, weil is_file in Abhängigkeit von der Dateigröße vllt. irgendwann mal viel Zeit beansprucht?

[phpf]is_file[/phpf] wird sicher niemals so schnell wie [phpf]isset[/phpf] ausgeführt werden.
Allerdings wird [phpf]is_file[/phpf] auch gecached, von daher sollte das nicht allzu groß ins Gewicht fallen. Wie viel Besucher hast du denn?

Ich denke nicht, dass die Performance von der Dateigröße abhängt. Belegen kann ich das allerdings nicht so ohne Weiteres. Vielleicht weiß jemand mehr?
 
Zurück