Teste De Conexão (velocimetro Simples)
#1
Posted 30/05/2008, 19:03
preciso descobrir como faço um pequeno teste de conexão para eu por em um site q estou fazendo.
preiso de algo bem simples.
tipo:
Velocidade: 69 Kbps
até mais
#2
Posted 02/06/2008, 09:47
#3
Posted 02/06/2008, 13:51
eu nunca fiz, mas faria assim:
1 - primeiramente vamos pensar que eu conheça o tamanho de umas 10 imagens (por exemplo)
2 - contaria o tempo gasto para carregar elas...
3 - pego o tempo que seria kb/s e multiplicaria por 8 para achar em kbps
veja este código:
function benchmark(){ //pega microtime atual $mtime = microtime(); //separa no espaço os segundos dos microsegundos $mtime = explode(" ",$mtime); //garante retorno em numero e soma o microsegundo com os segundos $mtime = doubleval($mtime[1]) + doubleval($mtime[0]); //retorna o tempo em segundos atual return ($mtime); } //define tempo inicial do script $tempodosistema1 = benchmark(); /* carrega 10 imagens totalizando 20 kb por exemplo */ //tempo final do script $tempodosistema2 = benchmark(); //tempo gasto pelo script arredondado em 4 casas depois da virgula $tempodoscript = round(abs($tempodosistema2-$tempodosistema1),4);
blz agora tenho o tempo decorrido, por exemplo 2 seg.
20/2 = 10kb/s * 8 = 80kbps
tenta ai....
#4
Posted 02/06/2008, 14:46
é o tamanho do arquivo dividido pela velocidade...
A velocidade é o que ele quer achar, seria o tamanho do arquivo dividido pelo tempo consumido.
#5
Posted 02/06/2008, 14:51
#6
Posted 02/06/2008, 20:50
primeiro crio um arquivo de 100 kb e divido por 1024 isso é = $tamanho
blz, agora preciso marcar o tempo de execução da página, veja como está meu código:
<? set_time_limit(0); /// pegar o tempo inicial $tempo1 = microtime(); $tempo1 = explode(" ",$tempo1); $tempo1 = $tempo1[1] + $tempo1[0]; // pegar o tamanho do arquivo $arquivo = file_get_contents("http://sovirtual.com.br/velocimeto/carregar_bytes.php"); $tamanho = strlen($arquivo) / 1024; /// pegar o tempo final $tempo2 = microtime(); $tempo2 = explode(" ",$tempo2); $tempo2 = $tempo2[1] + $tempo2[0]; /// tompo total $tempo_total = $tempo2-$tempo1; echo $velocidade= number_format($tamanho/$tempo_total * 8,2); ?>
preciso q vcs vejam se estou fazendo certo.
a também tenho um dúvida, eu estou calculando um arquivo de 100kb, isso faz diferença no resultado? qual seria o tamanho correto?
#7
Posted 02/06/2008, 22:21
Uma conexão de 1mb por exemplo, nem dará para saber se é 1mb, pois quando arrancar o download, terá já terminado o teste e no arranque geralmente ou é maior a velocidade ou menor do que o normal, nunca se sabe...
1mb acho o ideal, mas depende de cada um, pois arquivo de 1mb em conexão discada demora muito... E em uma conexão de 4mb é muito rápido, podendo nem saber a velocidade exata...
Edição feita por: lwirkk, 02/06/2008, 22:22.
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."
Muito Obrigado à todos do fórum, e à toda equipe do fórum!
#8
Posted 03/06/2008, 08:41
Faça vc mesmo um teste:
http://dancebatukeir...velocimetro.php
estou pegando um arquivo de 20k e calculando a velocidade
a minha maior dúvida é se estou fazendo algo de errado no código
100kb faz muita diferença
Uma conexão de 1mb por exemplo, nem dará para saber se é 1mb, pois quando arrancar o download, terá já terminado o teste e no arranque geralmente ou é maior a velocidade ou menor do que o normal, nunca se sabe...
1mb acho o ideal, mas depende de cada um, pois arquivo de 1mb em conexão discada demora muito... E em uma conexão de 4mb é muito rápido, podendo nem saber a velocidade exata...
Edição feita por: palhadecoco, 03/06/2008, 09:01.
#9
Posted 03/06/2008, 11:51
E como exemplo, se fosse em flash, você poderia fazer um tamanho indeterminado e dependendo quando a conexão se normalizar mais ou menos, ele para automaticamente e mostra a velocidade. Mas não sei fazer isso no flash, mas é possível, possível também com AJAX.
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."
Muito Obrigado à todos do fórum, e à toda equipe do fórum!
#10
Posted 03/06/2008, 11:54
O apache deve ter algum módulo, ou alguma coisa assim que meça a velocidade será que não?
#11
Posted 03/06/2008, 12:16
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."
Muito Obrigado à todos do fórum, e à toda equipe do fórum!
#12
Posted 03/06/2008, 18:24
Na velocidade do ping? Por que? Não ajuda muito isso, por que ping, é o tempo de resposta entre dois PC's, se uma pessoa do BRASIL da ping em outra do BRASIL terá pings baixo, e provavelmente elas poderão ter internet de alta velocidade. Se uma pessoa do BRASIL da ping com outra da ASIA, terão ping altos, e provavelmente terão internet em alta velocidade também...
É verdade, mas não estaríamos usando várias máquinas como destino, apenas uma! Bom, sei lá.
Se uma pessoa no Brasil pingar um endereço com conexão 600kb pra Ásia ela retorna X ms, com uma conexão 300 ms retorna 2X ms, mas você tá certo sim, essa não é minha especialidade mesmo, vamos torcer pra que alguém saiba mais e esclareça.
#13
Posted 03/06/2008, 20:08
vejá o velocímetro q achei em php na net e compare com o site do RJNET:
http://dancebatukeir...elocimetro3.php
RJNET: http://www.rjnet.com...velocimetro.php
em anexo tem o código usado, vejam o q podemos fazer para entender essa lógica.
Attached Files
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)