Postado em 11 de abril de 2008
Limitando a velocidade de download de um arquivo
Atenção! Essa postagem foi escrita há mais de 2 anos. Na informática tudo evolui muito rápido e algumas informações podem estar desatualizadas. Embora o conteúdo possa continuar relevante, lembre-se de levar em conta a data de publicação enquanto estiver lendo. Caso tenha sugestões para atualizá-la, não deixe de comentar!
Prefácio
Seguindo a linha do último artigo, agora criaremos um sistema para limitar a velocidade do cabra quando ele estiver fazendo o download.
Isso é bom para sites com grande volume de tráfego onde você não quer afogar a banda do servidor.
E então você me pergunta: “Como limitar a velocidade de um download com PHP?”
Conceito
Para esta experiência, utilizaremos um cálculo simples.
A idéia é não enviar o arquivo diretamente para o usuário, e sim enviar para o buffer em uma velocidade constante, estipulando a velocidade máxima com que o usuário irá receber os dados.
A idéia pode parecer um pouco complexa mas a implementação é simples!
Mão na massa
Vamos criar duas variáveis: $arquivo e $velocidade. Elas irão armazenar o nome do arquivo que será baixado e a velocidade máxima de download em kbps, respectivamente.
[php][/php]
A implementação segue a mesma idéia dos outros artigos escritos anteriormente. Um script PHP que gerencia o download do usuário.
Conclusão
Embora você possa experimentar alguma flutuação da taxa de download (alguns bits de diferença), o script irá se encarregar de enviar para o usuário os dados na velocidade correta!
Se possível: comente, entre em contato, mande sugestões…
É sempre bom saber o que vocês estão pensando!
E peço que me perdoem pela demora em postar mais colunas!
Um forte abraço e fiquem com Deus!