Autor Zpráva
Zonicek
Profil *
Zdrawíčko...
Plese nemáte tady někdo scriptíka pro měření rychlosti připojení k intenetu ?
Hledal jsem to na natíku ale nic použitelnýho jsem nenašel :(
Předem moc díx...
Yuhů
Profil
má to opravdu být skript v PHP, nebo je to v této kategorii omylem?
Zonicek
Profil *
Mnooo asitakhle :)
Bádal jsem potom... a zjistil jsem že se to dělá nějak na vÿpočet stáhnutí obrázku určité veliskoti..
Mnooo a tak mi přišlo že php by to počítalo super ne ?
Honza Hučín
Profil
Obecný princip měření rychlosti je změřit čas, za který se stáhne určitý daný objem dat. Může to být obrázek nebo obyčejný kód stránky (např. v komentáři).
Měření pomocí PHP je obtížné, protože od chvíle, kdy se stránka v PHP preprocesoru vygeneruje a odešle, už nad ní PHP ztrácí kontrolu. Tedy je potřeba použít klientské skriptování (Javascript), které zaznamená čas začátku a konce stahování. Je samozřejmě možné údaje poté odeslat nějakému serverovému skriptu, aby s nimi něco udělal.
Rychlost připojení se pokouším měřit právě v těchto týdnech. Není to úplně jednoduché. Pozor na špatnou interpretaci měření.
Zonicek
Profil *
Honza Hučín
A když to pak nějak doděláš mohl by jsi mi hodit please ten scriptík ?
Předem moc díx
llook
Profil
ad díx: Já myslel, že to je zkrácenina z novodobých patvarů díks nebo díkes.

ad měření: Nikdy to nebude úplně přesné. Můžeš jednoduše změřit dobu potřebnou k přenesení souboru předem známé velikosti, tak, že soubor po nahrátí pošle zprávu serveru, třeba takhle:
<html>
<body onload="window.location.href='meridlo.php?start=<?php echo(microtime()); ?>'">
Hodně dlouhý text...
</body>
</html>

Skript na serveru porovná čas vyslání dlouhého souboru ($_GET['start']) a čas požadavku na další soubor, ale je to dost nepřesné, protože v tom je i doba potřebná k zaslání druhého požadavku.

Dalo by se tedy podobně zjisti dobu potřebnou k zaslání dlouhého požadavku předem známé přibližné délky. To by na straně klienta obstaral Javascript, který by metodou POST odeslal formulář s dlouhým textem.

Po několika měřeních v obou směrech by se dal snad určit jakž takž pravděpodobný výsledek. Ale ve skutečnosti by to neměřilo rychlost připojení k Internetu, ale k tomu určitému serveru.
Unknown86
Profil *
Výše zmíněné řešení sice vypadá, že by mohlo fungovat, nesmíme však ale zapomenout na to, že protokol TCP/IP komprimuje jednotlivé pakety, takže kdybychom odesílali pouze obyčejný text, vyšla by nám výsledná rychlost, mnohem větší než skutečná. Proto doporučuji například ve WinRARu vytvořit komprimovaný soubor o určité velikosti a data z něj potom odesílat jako testovací data, protože tato data už není možné moc zkomprimovat. Jinak jsem něco takového udělal, je to na http://www.mrkev.net.
Toto téma je uzamčeno. Odpověď nelze zaslat.