Ограничение скорости download'a

sims

Guest
Ограничение скорости download'a

Нужно ограничить скорость download'a файла
(не всем, определённым пользователям)

я так понимаю средствами PHP всё равно большой точности в скорости не добиться, нужно хотя бы "зарубить" сумасшедшую скорость, сделать этому пользователю в раёне 40 кб, этому в раёне 10-20.

Надеялся использовать для этого usleep:

PHP:
while (!feof ($fd)) {
     usleep(10);
     echo fread($fd, 100);
}
но какую задержку я не ставил - результат один - скорость около 20-30 килобайт.

Оговорюсь что ОС - Солярис, не win, где эта функция не работает.

пробовал вставлять на место usleep пустой цикл - вроде как работает, но цикл - это нагрузка на процессор, тоесть не подходит, так как качать будут много.

в комментариях к usleep нашел функцию

PHP:
function microdelay($delay) {
$UNUSED_PORT=31238; //make sure this port isn't being used on your server
@fsockopen("tcp://localhost",$UNUSED_PORT,$errno,$errstr,$delay);
}
идея как бы хорошая, но результат тот же что и с usleep, тоесть, скорость одна и та же при изменении параметра.

Может, поможете советом, как ещё можно ограничить скорость закачки?

Знаю, что можно как-то ограничить трафик с помощью mod_throttle, но, если честно - я не понял как это можно использовать в моём случае :) мне нужно ограничивать скорость не для определённого IP, а для определённого логина...

Буду благодарен за совет.
 

sims

Guest
и что?

-~{}~ 01.04.04 22:56:

я честно говоря с диалапа не пробовал, но я так понимаю, что если на кабеле качается 40 кб, то на момеде должно быть 3кб...
 

sims

Guest
Спасибо, посмотрел.

всё же не очень понятно как с его помощью можно определить скорость для определённого пользователья авторизованного с помощью сессий.
О!, на первой же странице написано

that enable the setting of server-wide or per connection bandwidth limits, based on the directory, size of files and remote IP/domain.
Но может как-нибудь можно установить скорость на основании логина авторизованного апачем пользователя?
Это бы в корне изменило дело...
 

iNFerNo

Guest
sims

А ты можешь мне подкиунть движок доунлоад для файлов ну очень надо. мой проект без этого не проект.
 

fixxxer

К.О.
Партнер клуба
iNFerNo

Иди в поиск. Сто раз обсуждалось и с примерами кода.

-~{}~ 02.04.04 00:29:

А "проект" у тебя может быть только один - научиться программированию. Судя по твоим вопросам.
 

iNFerNo

Guest
fixxxxxer

Ну в четото ты прав насчет проекта. Учусь.


А посылат ьв поиск легко сказать... чтото ничего н енахожу уже 2 неделю.
 

sims

Guest
Линк я в первом посте написал уже про него...
 
Сверху