Ankündigung

Einklappen
Keine Ankündigung bisher.

gesplitteter remote download, cURL

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • gesplitteter remote download, cURL

    Hi zusammen,

    derzeit lade ich mit einem PHP-Script remote XML/CSV Dateien via cURL auf meinen Server.

    * V-Server
    * Linux
    * php.ini : memory_limit = 80M (nicht zur Laufzeit änderbar)


    Download-URL's sehen etwa so aus:

    Code:
    http://download.from.anywhere/?aid=123&type=xml&encoding=utf-8
    Das Ganze funktioniert auch soweit wunderbar - zumindest bis zu einer gewissen Grösse (ca. 15MB) der Remote-Datei (deren Grösse ist im Voraus nicht bekannt). Ist die Download-Datei zu gross gibt es regelmässig Fehler dieser Art:

    Code:
    Fatal error: Out of memory (allocated 27787264) (tried to allocate 25392290 bytes) in /home/www/PFAD_ZUM_SCRIPT on line 1234
    Kennt jemand eine Möglichkeit die Download-Datei in Einzelschritten von beispielsweise je 10MB herunterzuladen, auf meinem Server wieder zusammenzusetzen um sie dann weiter zu verabeiten?

    Vielleicht mit einer cURL-Option die ich bisher übersehen habe, fsockopen oder what ever. Irgendwie fehlt mir im Moment der Schubs in die richtige Richtung. Sehe den Wald vor lauter Bäumen nicht mehr ... Thx im Voraus

    Deboril


  • #2
    Ohne Clientseitig den Download bereits zu splitten sehe ich da keine Chance.

    Edith: oh mißverstanden... du *schiebst* mit einem Script..

    Dann kommts auf die Gegenseite an...
    Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

    Kommentar


    • #3
      [MAN]fopen[/MAN]
      [MAN]fgets[/MAN]
      [MAN]fputs[/MAN]
      "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

      Kommentar


      • #4
        Wenn der Server, von dem du herunterladen willst, Range Units unterstützt, wäre das der zu bevorzugende Weg.

        Kommentar


        • #5
          Curl kann auch direkt in eine Datei schreiben, damit sollte eigentlich kein so hoher speicherverbrauch zustandekommen.

          -> PHP: curl_setopt - Manual
          CURLOPT_FILE The file that the transfer should be written to. The default is STDOUT (the browser window).
          robo47.net - Blog, Codeschnipsel und mehr
          | Caching-Klassen und Opcode Caches in php | Robo47 Components - PHP Library extending Zend Framework

          Kommentar

          Lädt...
          X