Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Скрипт скорости загрузки сраницы, написал скрипт, показывает не то 
V
    Опции темы
SeregaGREY
Дата 13.1.2012, 09:44 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 28.7.2006

Репутация: нет
Всего: 0



Написал такой скрипт:
Код

<?php
$time_start = microtime(true);

$content = @file_get_contents("http://сайт.ru/httpd_status.txt"); // Считываем содержимое страницы

$filesize = filesize(dirname(dirname(__FILE__))."/services/httpd_status.txt");
$filesize = round($filesize/1000,0); // Переводим в kb и округляем

// Спим некоторое время
usleep(100);

$time_end = microtime(true);
$time = $time_end - $time_start;

echo "Ничего не делал $time секунд\n";
echo "Размер файла $filesize Kb\n";
echo "Скорость:".round($filesize/$time,0)." Kb/s\n";
?>


Так вот оно показывает скорость не ту которую показывает http://www.pr-cy.ru/speed_test
Может я что-то не так сделал?
PM MAIL   Вверх
MoLeX
Дата 13.1.2012, 10:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



смотря что вы хотите сделать, получить скорость загрузки страницы у клиента или сервера?! Если второе, то все правильно. Если первое - то вам в сторону flash надо


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
SeregaGREY
Дата 13.1.2012, 11:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 28.7.2006

Репутация: нет
Всего: 0



я хочу скорость загрузки страницы со стороны клиента. выполнить эту операцию на стороне сервера надо. можно как-то?
PM MAIL   Вверх
Sanchezzz
Дата 13.1.2012, 14:02 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: 41
Всего: 60



Код

<?php
$ch = curl_init('http://google.ru/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER , 1 );
curl_exec($ch);

if(!curl_errno($ch))
{
 $info = curl_getinfo($ch);
 echo '' . $info['total_time'] . ' Сек загрузка адреса ' . $info['url'];
}
// Close handle

print "<pre>";
print_r($info);
print "</pre>";

curl_close($ch);
?>




--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
$дмитрий
Дата 13.1.2012, 20:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 19.6.2004

Репутация: 17
Всего: 45



Цитата

я хочу скорость загрузки страницы со стороны клиента. выполнить эту операцию на стороне сервера надо. можно как-то? 

Эту операцию нужно выполнять на стороне и по инициативе клиента, иначе никак. Тот сервис по ссылки бред полнейший

Это сообщение отредактировал(а) $дмитрий - 13.1.2012, 20:55
PM MAIL   Вверх
MoLeX
Дата 14.1.2012, 08:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



РНР - серверный язык и этим все сказано


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
SeregaGREY
Дата 14.1.2012, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 28.7.2006

Репутация: нет
Всего: 0



Цитата(Sanchezzz @ 13.1.2012,  14:02)
Код

<?php
$ch = curl_init('http://google.ru/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER , 1 );
curl_exec($ch);

if(!curl_errno($ch))
{
 $info = curl_getinfo($ch);
 echo '' . $info['total_time'] . ' Сек загрузка адреса ' . $info['url'];
}
// Close handle

print "<pre>";
print_r($info);
print "</pre>";

curl_close($ch);
?>

Хмм. У меня curl выдавал то же время что и когда я сокетами считывал сайт. Выходит это тоже не поможет.
PM MAIL   Вверх
MoLeX
Дата 14.1.2012, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



Цитата(SeregaGREY @  14.1.2012,  11:42 Найти цитируемый пост)
Хмм. У меня curl выдавал то же время что и когда я сокетами считывал сайт. Выходит это тоже не поможет. 

Вы наши сообщения игнорируете? Сказали же, что такое не возможно сделать на стороне сервера. Нужны языки и технологии для клиента.


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
SeregaGREY
Дата 14.1.2012, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 28.7.2006

Репутация: нет
Всего: 0



Цитата(MoLeX @ 14.1.2012,  11:46)
Цитата(SeregaGREY @  14.1.2012,  11:42 Найти цитируемый пост)
Хмм. У меня curl выдавал то же время что и когда я сокетами считывал сайт. Выходит это тоже не поможет. 

Вы наши сообщения игнорируете? Сказали же, что такое не возможно сделать на стороне сервера. Нужны языки и технологии для клиента.

Но java и flash не выполнить на сервере.

Приблуда http://www.pr-cy.ru/speed_test точно бесполезна? Она в разное время показывает разную скорость загрузки страниц - значит работает?

Это сообщение отредактировал(а) SeregaGREY - 14.1.2012, 13:16
PM MAIL   Вверх
MoLeX
Дата 14.1.2012, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



Цитата(SeregaGREY @  13.1.2012,  11:48 Найти цитируемый пост)
я хочу скорость загрузки страницы со стороны клиента. выполнить эту операцию на стороне сервера надо. можно как-то? 

на РНР нельзя

Цитата(SeregaGREY @  14.1.2012,  13:14 Найти цитируемый пост)
Приблуда http://www.pr-cy.ru/speed_test точно бесполезна? Она в разное время показывает разную скорость загрузки страниц - значит работает?

вы уверены что он показывает скорость загрузки сайтов со стороны пользователя, а не сервера?


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
SeregaGREY
Дата 15.1.2012, 09:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 28.7.2006

Репутация: нет
Всего: 0



Цитата(MoLeX @ 14.1.2012,  13:38)
Цитата(SeregaGREY @  14.1.2012,  13:14 Найти цитируемый пост)
Приблуда http://www.pr-cy.ru/speed_test точно бесполезна? Она в разное время показывает разную скорость загрузки страниц - значит работает?

вы уверены что он показывает скорость загрузки сайтов со стороны пользователя, а не сервера?

я наверное не так выразился. мне надо узнать не какая скорость у пользователя а с какой скоростью сервер отдаёт контент. curl и сокеты для этого подходят?
PM MAIL   Вверх
Sanchezzz
Дата 16.1.2012, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: 41
Всего: 60



Цитата

я наверное не так выразился. мне надо узнать не какая скорость у пользователя а с какой скоростью сервер отдаёт контент. curl и сокеты для этого подходят? 

если контент серверу то да CURL можно, и это более оптимально

смотри $info = curl_getinfo($ch);
  • CURLINFO_EFFECTIVE_URL - Последний использованный URL
  • CURLINFO_HTTP_CODE - Последний полученный код HTTP
  • CURLINFO_TOTAL_TIME - Полное время выполнения последней операции в секундах.
  • CURLINFO_NAMELOOKUP_TIME - Время разрешения имени сервера в секундах.
  • CURLINFO_CONNECT_TIME - Время, затраченное на установку соединения, в секундах
  • CURLINFO_PRETRANSFER_TIME - Время, прошедшее от начала операции до готовности к фактической передаче данных, в секундах
  • CURLINFO_STARTTRANSFER_TIME - Время, прошедшее от начала операции до момента передачи первого байта данных, в секундах
  • CURLINFO_REDIRECT_TIME - Общее время, затраченное на перенаправления, в секундах
  • CURLINFO_SIZE_UPLOAD - Общее количество байт при закачке
  • CURLINFO_SIZE_DOWNLOAD - Общее количество байт при загрузке
  • CURLINFO_SPEED_DOWNLOAD - Средняя скорость загрузки
  • CURLINFO_SPEED_UPLOAD - Средняя скорость закачки
  • CURLINFO_HEADER_SIZE - Суммарный размер всех полученных заголовков
  • CURLINFO_HEADER_OUT - Посылаемая строка запроса. Для работы этого параметра, добавьте опцию CURLINFO_HEADER_OUT к дескриптору с помощью вызова curl_setopt ()
  • CURLINFO_REQUEST_SIZE - Суммарный размер всех отправленных запросов, в настоящее время используется только для HTTP-запросов
  • CURLINFO_CONTENT_TYPE - Содержимое полученного заголовка Content-Type: , или NULL, если сервер не послал правильный заголовок Content-Type


Это сообщение отредактировал(а) Sanchezzz - 16.1.2012, 20:41


--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
SeregaGREY
Дата 17.1.2012, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 28.7.2006

Репутация: нет
Всего: 0



Потестил и curl и file_get_contents
Данные получаются почти одинаковые, почти одинакоывые похоже потому что сервер в разное время с разной скоростью данные отдаёт.
Но curl как то компактнее выглядит и правильнее, так что остановился на нём.

Всем спасибо!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0527 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.