Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Przyśpieszenie skryptu
Forum PHP.pl > Forum > PHP
radmistrz2
Napisałem sobie skrypt do pobierania plików z wrzuty. Niestety muszę bardzo długo czekać zanim pojawi się pobieranie (1-2 min na serwerze z łączem 100 Mbit/s). Czy zrobiłem jakiś błąd że tak wolno się to robi czy wszystko jest ok?? Jak to przyśpieszyć??



  1. <?php
  2. //pobieranie strony
  3. $adres='http://www.wrzuta.pl/'.$_GET['id'];
  4. $curl = curl_init( "$adres" );
  5. curl_setopt( $curl, CURLOPT_RETURNTRANSFER , TRUE );
  6. $content = curl_exec( $curl );
  7. curl_close( $curl );
  8. //zapis do pliku
  9. $file = "baza.txt";
  10. $fp = fopen($file, "w");
  11. flock($fp, 2);
  12. fwrite($fp, $content);
  13. flock($fp, 3);
  14. fclose($fp);
  15. //przetrarzanie danych
  16. $sql = file('baza.txt');
  17. $h = str_replace('_', ' ', strrev(substr(strstr(strrev(substr(strstr($sql[4], "<title>"), 19)), ">eltit/<"), 8)));
  18. $bb = substr(strstr($adres, "audio"), 5);
  19. $bc = 'http://wrzuta.pl/aud/file'."$bb";
  20. //przekierowanie
  21. header("Cache-Control: public");
  22. header("Content-Description: File Transfer");
  23. header('Content-disposition: attachment; filename="'.$h.' (www.mp3ki.eu).mp3"');
  24. header("Content-Type: mp3/download");
  25. header("Content-Transfer-Encoding: binary");
  26. readfile($bc);
  27. ?>
DJ ProG
Witam smile.gif

Kodu nie sprawdzałem, ale AFAIK wina leży po stronie wrzuty, a dokładnie ich serwerów.
Raz, że ich "przechowywalnie plików" mają niezłe pingi, dwa że większa ich część jest na łączu ograniczonym do... eee... 50kb/s ?
radmistrz2
a dało by się zrobić aby nie pobierało mi na serwer najpierw całego pliku tylko w locie na bieżąco pobierało i wysyłało??
DJ ProG
Jasne winksmiley.jpg
Wywal buforowanie (ob_start() / ob_get_clean() / ob_end_flush()) tongue.gif
radmistrz2
dzięki. Działa. a dla czego tak się dzieje?? Może ktoś mi wytłumaczyć?? Czyżby do buforowania musiały wykonać się wszystkie czynności przed buforowaniem?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.