Ankündigung

Einklappen
Keine Ankündigung bisher.

Gesendete Größe ermitteln

Einklappen

Neue Werbung 2019

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

  • Gesendete Größe ermitteln

    Kann man mittels PHP ermitteln, wie viele Bytes von dem Content bereits übertragen wurden? Ich hab ein Script, dass einen Dateidownload startet und denn Speed auf 200KB/s begrenzt, also ganz simpel:
    echo fread(Dateihandle, 1024*200);
    sleep(1);

    Zusätzlich will ich noch wissen, wie viel wirklich übertragen wurden, weil man kann die Datei ja auch mit nur "50KB/s" übertragen wenn die Leitung nicht mehr her gibt ...

    Also ist da was möglich?


  • #2
    Nimmst du JavaScript, backst dir ein Script, baust Ajax mit ein und mast ne api daür am server.

    Kommentar


    • #3
      O_o was hat das mit Dateidownload zutun?

      Kannst du nicht einfach die Länge berechnen wieviel bei fread() denn wirklich angekommen ist?

      Kommentar


      • #4
        Eigentlich sollte das egal sein.
        Dann braucht der andere halt länger als 1 sekunde dafür aber bekommt ja im Endeffekt trotzdem seine 200kb.
        Du sagst ja nirgends

        if(dauer > 1 Sekunde) sleep(1);

        cu
        Grüße
        Destruction
        "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

        Kommentar


        • #5
          Ich denke er möchte die Tatsächliche Verbindungsgeschwindigkeit aller Teilnehmer, die etwas runterladen messen. Z.b. für Downloadportale wichtig (x Kb/s von x Kb/s frei)

          Kommentar


          • #6
            Das geht nicht. PHP schiebt die Daten in den Puffer des Webservers und der sendet die an den User - Was dann nun davon wirklich beim User schon angekommen ist, ist i. d. R. nicht bekannt. PHP bemerkt z. B. per Default nicht, wenn die HTTP-Verbindung unterbrochen wird.

            Kommentar


            • #7
              Ich denke er möchte die Tatsächliche Verbindungsgeschwindigkeit aller Teilnehmer, die etwas runterladen messen. Z.b. für Downloadportale wichtig (x Kb/s von x Kb/s frei)
              Wenn ja, warum schreibt er das dann nicht einfach.
              --

              „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
              Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


              --

              Kommentar


              • #8
                Imho wenn man so ein Download-Portal betreibt denke ich sollte man solche Sachen ausserhalb des Kontexts von php regeln, die verwendete bandbreite lässt sich unter linux mit diversen tools abgreifen und speed-limitierung bietet fast jeder webserver mit irgendwelchen modulen an.
                robo47.net - Blog, Codeschnipsel und mehr
                | Caching-Klassen und Opcode Caches in php | Robo47 Components - PHP Library extending Zend Framework

                Kommentar


                • #9
                  Lighttpd hat z.B. die Status Seite wo du so etwas auslesen kannst
                  "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

                  Kommentar


                  • #10
                    also nein ich will die Geschwindigkeit nicht berechnen ... es geht mir einzig und allein um die Log-Dateien, in die Log wird geschrieben wann der User welche datei läd und wann das Script fertig ist mit senden, würde gerne wenn der User abbricht das es da steht

                    und naja das mit dem Apache Puffer hab ich mir gedacht kann man davon nicht die Größe bestimmen -> denn weiß man wie viel Bytes noch ausstehen und kann es berechnen ...

                    Kommentar


                    • #11
                      Zitat von C00lZ3r0 Beitrag anzeigen
                      in die Log wird geschrieben wann der User welche datei läd und wann das Script fertig ist mit senden, würde gerne wenn der User abbricht das es da steht
                      PHP: Connection handling - Manual

                      Kommentar

                      Lädt...
                      X