скорость между фтп сервером и юзером с помощью РНР

  • Автор темы Автор темы FedY@
  • Дата начала Дата начала

FedY@

Новичок
скорость между фтп сервером и юзером с помощью РНР

скорость между фтп сервером и юзером с помощью РНР

мне нужно вычеслить скорость между сервером и юзером.. и узнать какая скорость между ними в Кбит/сек
какие функции исп. и как это организовано?
 
эээ, в качестве вариант: отдавай на сервак после установки соединения пакет фиксированного размера и считай время за какое эта операция завершиться.... думаю зная это высчитать скорость не составит особых проблем. :)

Это в случае если юзером FTP выступает PHP.
В случае если он прослойка - то тут хитрее.... :)
 
нет должно быть вот так ЮЗЕР<-PHP<-FTP

и скорость определить именно между Юзером например 127.0.0.2 и ФТП 127.0.0.1

-~{}~ 17.12.06 20:25:

и кстате, мне нужно просто протестить так два сервака и дать ссылку на самый быстрый сервер...

-~{}~ 17.12.06 20:26:

и скорость не Upload, а Download
 
8-0 Тогда я думаю только вычисляешь скорость PHP<-FTP1, потом PHP<-FTP2 и отдавать ссылку на тот где скорость больше а нагрузка на нём соответственно меньше..... других вариантов я как-то не вижу.... Посмотреть скорость на прямом соединении browser<->ftp со стороны php у тебя не получиться - это системная информация.

А если тебе нужна скорость получения - то просто забирай тестовый пакет и всё. Если его там нету то сначала поклади его туда, а потом забирай и считай скорость.
 
ну так можно проверить скорость между рнр и фтп?

-~{}~ 17.12.06 21:43:

это конечно не совсем подходит... но попробуем...=)
 
2FedY@
Автор оригинала: Vallar_ultra
отдавай на сервак после установки соединения пакет фиксированного размера и считай время за какое эта операция завершиться.... думаю зная это высчитать скорость не составит особых проблем.
Тебе концепция нужна или готовый код?
 
FedY@

Елки, а скрипт-то нафига для твоей задачи? Команда "ping" тебе все покажет... хоть в Lin хоть в Win...
 
2FedY@
Концепция довольно простая, попробую объяснить ещё раз:

1) Устанавливаешь соединение с FTP-сервером посредством РНР.
2) Кладешь туда тестовый пакет если его там нету (на FTP)
3) Открываешь считалку времени (HELP: http://ru2.php.net/manual/ru/function.microtime.php)
4) запрашиваешь у сервера тестовый пакет.
5) Останавливаешь считалку. (результатом станет кол-во микросекунд за которые прошла скачка файла с сервака)
6) размер пакета делишь на время и получаешь искомую скорость.

http://ru2.php.net/manual/ru/ref.ftp.php - это как работать с фтп
http://ru2.php.net/manual/ru/ref.network.php - это как работать с сетью

Думаю этой информации вполне достаточно для того чтоб ты сам всё прекрасно написал :))

-~{}~ 17.12.06 22:02:

2RigVan
Ага, тока вопервых скорость соединения FTP и скорость ответа ICMP - это не одинаковые величины, это раз. И не факт что на хосте разрешены exec() и system()
 
Vallar_ultra

Замечание верное, но если пояснение запроса от FedY@, а именно:
"и кстате, мне нужно просто протестить так два сервака и дать ссылку на самый быстрый сервер..."
отражает суть его проблемы, то лишних движений можно избежать :)
 
2RigVan
Ну вобщем это да, но если человек за одно научиться работать с ФТП-шными функциями и поймет, пусть даже приблизительно, принцип решения смежных с этой задач - то я считаю это уже большим достижением. :)
 
Vallar_ultra

И ты туда же :) Мало тут что-ли на форуме "учителей", которых хлебом не корми дай поучить кого-нибудь... Давайте уж просто научимся отвечать на те вопросы, что задают, без разного рода нравоучений... Пусть этим вещами всякие Фанаты занимаются, раз без этого им никуда... (ИМХО, конечно ни кого не хчу обидеть...)
 
2RigVan

В данном случае видно 1) Человек явно не полный ламер, а соответственно думать умеет
2) Задача не трудная, и времени у него уйдёт на это не сильно больше чем пингануть сервер и разобрать через RegExp ответ. Зато завтра он проснёться и больше не будет задавать вопросов о вычислении скорости, т.к. этой ночью он всё понял. :)

Насчёт нравоучений:
с другой стороны, если давать готовый код - то это как-то не способствует развитию людей, а меня лично например бесит кол-во народа, который говорит что знает РНР, хочет 1500 баксов зп и при этом не может справиться с задачкой по выводу бинарного дерева.

Иногда действительно проще написать человеку пару строк кода чем объяснять многие и многие вещи или отправлять читать ОГРОМНОЕ кол-во мануалов, но это не в данном случае.

З.Ы. Кстати многие псевдопрограммеры действительно получают ТАКИЕ деньги, которые не должны заробатывать никогда, и всё по тому что они в своё время правильно перепечатали код с учебника, а теперь не знают что с этим делать.
 
полностю с тобой согласен... зделал через пинг!=)
спасибо еще раз огромное!
 
Сверху