Výsledky 1 až 7 z 7

Téma: [PHP] nebo [JS]:jak napsat simple test rychlosti pripojeni

  1. #1
    Senior Member
    Založen
    09.10.2002
    Bydliště
    Praha
    Příspěvky
    1 404
    Vliv
    298

    Standardní [PHP] nebo [JS]:jak napsat simple test rychlosti pripojeni

    nejlepsi by bylo php.. mel jsem nejake napady, nebo napad, ale rekl bych, ze skript nefunguje.. napada vas neco jineho.. nebo jak to nejlepe resit.. napsat si to zvladnu uz snad sam.. i kdyz kdyby nekdo mel hezky zdrojak, rad se podivam jak na to.. a napisu si vlastni..

    nize prikladam to co jsem napsal(snad by tam nemela byt chyba.. ale jisty si nejsem) ja a melo by snad fungovat, ale je to nejaky chaoticky... a vyhazuje to divny vysledky. pripadne vyzkousejte link http://jey.wz.cz/files/webdesign/4.php a kdyby vam to nahodou vyhazovalo priblizne spravne hodnoty napiste.. at zbytecne neplasim..
    (pripojil jsem komentare do kodu.)

    <?
    header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
    header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
    header("Cache-Control: no-cache, must-revalidate");
    header("Pragma: no-cache");

    $data=explode(" ",microtime());
    $data[0]=round($data[0]*1000);
    if ($data[0]<10) {$data[0]="0".$data[0];}
    if ($data[0]<100) {$data[0]="0".$data[0];}
    $start=$data[1].$data[0]; // microtime kdy zacne stahovani 100KB souboru
    ?>
    <comment>
    1000000-19B(za ty dva commenty) nesmyslnych znaku - tohle je 100Kbyte blok se kterym se dale pocita
    </comment>
    <script type="text/javascript">
    time=new Date();
    microtime=time.getTime(); //microtime, kdy skonci stahovani 100KB souboru
    document.write('
    ',(100000/(microtime-<? echo $start; ? >)),'KB/s
    '); // vypocet rychlosti pripojeni, vysledek v KB/s
    </script>

  2. #2

    Standardní PHP a měření...

    no nevím, jak bys chtěl přes PHP dělat měření rychlosti připojení, protože v PHP není žádná na to fce, ale ten příklad, který jsi napsal, je spíše na rychlost vygenerování stránky a ne na rychlost připojení...

    Co se týče toho měření, tak to musí probíhat mezi serverem a klientem, takže se musí mezi nimi zaslat nějaké množství dat, které se pak sesumíruje, vypočítá...

    Nejlepší by to bylo naprogramovat třeba v Javě apod. Dobrá inspirace je na www.dsl.cz - měření dat... Pokud ale chcete konkrétní příklad sestrojení, tak napište...

  3. #3

    Standardní Re: PHP a měření...

    Citace Původně odeslal LucasArts
    no nevím, jak bys chtěl přes PHP dělat měření rychlosti připojení, protože v PHP není žádná na to fce, ale ten příklad, který jsi napsal, je spíše na rychlost vygenerování stránky a ne na rychlost připojení...

    Co se týče toho měření, tak to musí probíhat mezi serverem a klientem, takže se musí mezi nimi zaslat nějaké množství dat, které se pak sesumíruje, vypočítá...

    Nejlepší by to bylo naprogramovat třeba v Javě apod. Dobrá inspirace je na www.dsl.cz - měření dat... Pokud ale chcete konkrétní příklad sestrojení, tak napište...
    Ehm furt proc vytahujes takhle stare tredy?

    Kdybys ses koukl tak Jey uz to resil pred nedavnem aktualneji
    http://oc4um.murder.cz/viewtopic.php?t=64019

  4. #4
    Senior Member
    Založen
    09.10.2002
    Bydliště
    Praha
    Příspěvky
    1 404
    Vliv
    298

    Standardní Re: PHP a měření...

    Citace Původně odeslal jedik
    Citace Původně odeslal LucasArts
    no nevím, jak bys chtěl přes PHP dělat měření rychlosti připojení, protože v PHP není žádná na to fce, ale ten příklad, který jsi napsal, je spíše na rychlost vygenerování stránky a ne na rychlost připojení...

    Co se týče toho měření, tak to musí probíhat mezi serverem a klientem, takže se musí mezi nimi zaslat nějaké množství dat, které se pak sesumíruje, vypočítá...

    Nejlepší by to bylo naprogramovat třeba v Javě apod. Dobrá inspirace je na www.dsl.cz - měření dat... Pokud ale chcete konkrétní příklad sestrojení, tak napište...
    Ehm furt proc vytahujes takhle stare tredy? :)

    Kdybys ses koukl tak Jey uz to resil pred nedavnem aktualneji ;)
    http://oc4um.murder.cz/viewtopic.php?t=64019
    tyjo hustyyy, jsem nejdriv myslel, ze tohle je ten nejposlednejsi thread.. na tenhle minuly jsem uz davno zapomnel a pak vidim tohle:)))))))) eee je to fakt stary thread a presne nevim proc ho vytahuje. navic jsem to vyresil uz nedavno davno jinde.

  5. #5

    Standardní Re: [PHP] nebo [JS]:jak napsat simple test rychlosti pripojeni

    Lepší je toto řešení, ale může být nepřesné, protože každý prohlížeč zpracovává příchozí data jinak (nastavení bufferu pro flush je pokaždé jiné). Také záleží na vytížení odchozí linky serveru a serveru samotného (což ale nebude takový problém u měřených linek do řekněme 50MBit/s). Soubor index.php spustí test a soubor rychlost.php zobrazí výsledek. Ve výsledku je flash graf, ale ten samozřejmě být nemusí. V příloze posílám všechny soubory testu. Měří se pouze rychlost downloadu.

    Princip je takový, že se nejprve změří krátkým testem základní schopnost linky. Podle toho se nastaví hlavní test (velikost stahovaných dat). Zaznamená se čas startu a pošlou se data ke klientovi. Po dokončení posílání se zaznamená čas odeslání. Rozdíl v čase se spočítá s velikostí dat a zobrazí se rychlost downloadu.

    Vyzkoušet si to můžete na stránce http://rychlost.mysoft.cz

    soubor: index.php

    Kód:
    <font face="verdana" color="navy"><?php
    $kb=rand(2048,5120);
    echo "streaming $kb kB...<br><!-";
    flush();
    $time = explode(" ",microtime());
    $start = $time[0] + $time[1];
    for($x=0;$x<$kb;$x++){
        echo str_pad('', 1024, '.');
        flush();
    }
    $time = explode(" ",microtime());
    $finish = $time[0] + $time[1];
    $deltat = $finish - $start;
    echo "-> Test finished in $deltat seconds. Your speed is ". round($kb / $deltat, 3)."kB/s<br>";
    $vysledek=round($kb / $deltat, 3);
    
    // hlavní kolo
    $kb=25*$vysledek;
    if ($kb>50000):$kb=50000; endif;
    echo "streaming $kb kB...<br><!-";
    flush();
    $time = explode(" ",microtime());
    $start = $time[0] + $time[1];
    for($x=0;$x<$kb;$x++){
        echo str_pad('', 1024, '.');
        flush();
    }
    $time = explode(" ",microtime());
    $finish = $time[0] + $time[1];
    $deltat = $finish - $start;
    $vysledek=round($kb / $deltat, 3);
    $vysledek=$vysledek*8; // převod z kB na kb
    echo "-> Test finished in $deltat seconds. Your speed is ". round($kb / $deltat, 3)."kB/s<br>";
    echo "Speed is <font size=5 color=green><b>$vysledek kbps</b></font><br>";
    
    include "./rychlost.php";
    ?></font>
    soubor rychlost.php
    Kód:
    <!--[if !IE]> --> 
    <br>WWW Prohlížeč: jiný, než IE.<br>
    <object type="application/x-shockwave-flash" data="./tachak.swf?vysledek=<? echo $vysledek;?>" width="400" height="400"> 
    <!-- <![endif]--> 
    <!--[if IE]>
    <br>WWW prohlížeč: Internet Explorer.<br>
    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
    codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0"
    width="400" height="400">
    <param name="movie" value="./tachak.swf?vysledek=<? echo $vysledek;?>" />
    <!--><!----> 
    <param name="loop" value="false" /> 
    <param name="menu" value="false" /> 
    <param name="wmode" value="transparent" /> 
    <param name="bgcolor" value="#ffffff"> 
    </object> 
    <!-- <![endif]-->
    Přiložené soubory Přiložené soubory

  6. #6

    Standardní Re: [PHP] nebo [JS]:jak napsat simple test rychlosti pripojeni

    Snad si to autor po 7mi letech precte a pomuze mu to.
    Kazdopadne vitej na foru .)

    Fanless Experiment || Gigabyte Z77-DS3H | Intel i5-3570K | Thermalright HR-02 | 16G DDR3 | Sapphire HD 7750 Ultimate | Crucial M4 256GB | Seasonic X-400FL | Fractal Define R4
    Dell D430 || i945G | C2D 1.2G ULV | 2G DDR2 533 | GMA950 | 12" 1280x800 | 80G 4k2 | 802.3ab | 802.11g | 802.15.1 | HSDPA | Windows 7 x64
    Storage || i965G | E2200 | 4G DDR2 | RAID5 6x Samsung HD154UI 1.5TB - ~7TiB | 802.3ab ...powered by Ubuntu Server x64
    Accessories || E-MU Tracker Pre USB 2.0 | Meier Corda Headsix | Sony MDR-CD470 | Pioneer A-204R | Tesla ARS 9218 32 | LG 32LD350

    "Music is essentially useless, as life is." George Santayana


  7. #7
    Senior Member
    Založen
    09.10.2002
    Bydliště
    Praha
    Příspěvky
    1 404
    Vliv
    298

    Standardní Re: [PHP] nebo [JS]:jak napsat simple test rychlosti pripojeni

    Ahoj, díky za veselou chvilku zhruba před 6 a půl roky jsem to vyřešil a zhruba před 5 lety jsem ono řešení přestal používat/potřebovat nebo to bylo celé zastaralé, už fakt nevím, šlo o komunitní web pro uživatele wifi sítě.
    Ale díky za snahu pomoct hezký funkční skript, třeba se někomu bude v budoucnu hodit. Co jsem koukal na tento thread a na další zde odkazovaný, tak jsem se s tím tehdá dost nazlobil

Informace o tématu

Users Browsing this Thread

Toto téma si právě prohlíží 1 uživatelů. (0 registrovaných a 1 anonymních)

Pravidla přispívání

  • Nemůžete zakládat nová témata
  • Nemůžete zasílat odpovědi
  • Nemůžete přikládat přílohy
  • Nemůžete upravovat své příspěvky
  •