Ergebnis 1 bis 4 von 4

Thema: Bilder von CDN mit Curl parsen - sehr langsam

  1. #1
    Kunde
    Registriert seit
    14.10.2010
    Beiträge
    22

    Hinweis/Information Bilder von CDN mit Curl parsen - sehr langsam

    Guten Morgen,

    bisher parse ich die Bilder via curl um den Bilder einen eigenen Namen zu verpassen welcher SEO-technisch besser da steht. Leider dauert das Laden der Bilder in einer Übersicht in einem Shop sehr lange, liegt das an meinem schwachen Hosting-Paket?

    Würde ein Managed Server oder ähnliches abhilfe schaffen?

    Das folgende Script benötigt im Schnitt 1200ms... bei 24 Bilder in der Übersicht ... gute Nacht!
    Teste ich das Script Local geht das so schnell wie gewünscht, fehlt also in meinem Paket die Rechenpower? (Der benötigte schnelle Upstream des CDN ist gegeben!)
    PHP-Code:
    // Original Bild Url vom CDN
    $imgUrlFromCdn "sscdn.domain.tld/x/bild.jpg";    

    // Einstellungen für Curl
    $ch curl_init("http://www.domain.tld/".$_SERVER['PHP_SELF']);
    curl_setopt($chCURLOPT_URL$imgUrlFromCdn);
    curl_setopt($chCURLOPT_HEADER0);
    curl_setopt($chCURLOPT_RETURNTRANSFER1);
        
    // Ausgabe
    header('Content-type: image/jpeg');
    echo 
    curl_exec($ch);

    // Handle closen
    curl_close($ch); 

  2. #2
    Forenexperte & RP² Produkttester (Managed Reseller Server) Avatar von wareconsult
    Registriert seit
    31.08.2005
    Beiträge
    5.357

    AW: Bilder von CDN mit Curl parsen - sehr langsam

    Hallo plurry,

    das was du hier machst ist natürlich in Hinblick auf die Performance sowieso eine ziemlich schlechte Idee. Du rufst für jedes einzelne Bild einene eigenen PHP-Prozess auf, was bei dF (falls FastCGI deaktiviert ist) auch jedes Mal einen eigenen Prozess startet. Bei 24 Bildern erzeugst du so alleine für die Bilder 24 Prozesse auf dem Server.

    FastCGI könnte das vermutlich beschleunigen. Allerdings steht FastCGI aktuell nur bei dedizierten Servern zur Verfügung.

    Eventuell könntest du aber auch mit mod_rewrite das gleiche Ergebnis erzielen. Das wäre dann sicher weniger rechenintensiv wie dein Umweg über PHP
    viele Grüße

    Stephan Munz

  3. #3
    Kunde
    Registriert seit
    14.10.2010
    Beiträge
    22

    AW: Bilder von CDN mit Curl parsen - sehr langsam

    Vielen dank, bin schon hier im Board auf einige Lösungsvorschläge bzgl. mod_rewrite gestossen. Die werde ich mir mal genauer anschauen!

  4. #4
    Forenexperte² (Reseller) Avatar von Enigma
    Registriert seit
    20.07.2001
    Beiträge
    14.477

    AW: Bilder von CDN mit Curl parsen - sehr langsam

    Zitat Zitat von plurry Beitrag anzeigen
    bisher parse ich die Bilder via curl um den Bilder einen eigenen Namen zu verpassen welcher SEO-technisch besser da steht.
    Die Namen bzw. Pfade wären dann optimiert, aber "SEO-technisch" stündest Du wegen der Performanceeinbußen eher schlechter da.

    Die genannte mod_rewrite-Lösung ist sehr einfach:
    Code:
    RewriteEngine On
    
    RewriteRule ^images/mein-tolles-bild\.jpg$ http://sscdn.domain.tld/x/bild1.jpg [L,P]
    RewriteRule ^images/mein-anderes-tolles-bild\.jpg$ http://sscdn.domain.tld/x/bild2.jpg [L,P]
    Entsprechend ergänzen, Bild-Tags anpassen, fertig.

    Das Flag [P] ist hier das Entscheidende - dadurch wird Dein Server als Proxy genutzt. Allerdings stellt sich die Frage, inwieweit es dann noch Sinn macht, ein CDN zu nutzen - nun gehen doch wieder alle Anfragen über Deinen Server (wie natürlich auch bei Deiner Lösung). Da ist es vermutlich sogar performanter, die Bilder selbst zu hosten. Du solltest abwägen, ob es tatsächlich nötig ist, die Dateinamen / Pfade anzupassen.

    Gruß,
    Jan
    Two hours of trial and error can save ten minutes of manual reading.

Ähnliche Themen

  1. Löschen von E-Mail-Adressen sehr langsam (>1 Min)
    Von ad1601com im Forum Fragen rund um E-Mail
    Antworten: 10
    Letzter Beitrag: 13.07.2009, 02:13

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •