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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Создание одновременных запросов с разных серверов 
:(
    Опции темы
alPacino
Дата 16.1.2006, 17:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Доброе время суток!

Задача: есть некая система, работающая на целевом сервере, для которой необходимо рассчитать производительность опытным путем (искусственно формировать некоторое количество наиболее реалистичных запросов с разных машин). Т.е. необходимо генерировать максимально одновременно запросы сразу с нескольких серверов на целевой.

Один из вариантов решения, который я вижу: на целевом сервере запустить процесс, на всех N машинах fork'ом запустить M процессов, которые при запуске коннектятся к процессу целевого сервера и ждут команды. Демон посылает некую команду всем подключенным процессам, а те, в свою очередь, формируют запрос на целевой сервер.

P.S.: было предложено воспользоваться тулзой ab (apachebrenchmark), но ее недостаток в том, что она показывает внешнее время (т.е. с учетом передачи данных, а скорость то может менться в зависимости от загрузки сервера), а нам необходимо засекать время обработки только транзакции (это уже реализовано). Да и результат ab не выдает.

С радостью выслушаю змечания/комменты по данной задаче.
Заранее благодарен.
PM MAIL   Вверх
AntonioBanderaz
Дата 16.1.2006, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Velichko Anton
**


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

Репутация: 1
Всего: 18



1. Что за система?
2. На чём написана?

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


--------------------
ГЫ... 
PM MAIL ICQ   Вверх
Mal Hack
Дата 16.1.2006, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


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

Репутация: 8
Всего: 261



Цитата(alPacino @ 16.1.2006, 17:15 Найти цитируемый пост)

для которой необходимо рассчитать производительность опытным путем

Зачем?
PM ICQ   Вверх
alPacino
Дата 17.1.2006, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



To AntonioBanderaz
Цитата

Что за система?

На самом деле роли не играет, что за система
Цитата

На чём написана?

PHP5
Цитата

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

Это уже способ фиксирования времени, что уже реализовано. А необходимо фиксировать время "чего-то", а это "чего-то" надо сгенерить. В этом и состоит вопрос: как правильнее на ваш взгляд сгенерировать одновременые запросы с разных серверов.
To Mal Hack
Цитата

Зачем?

Для того, чтобы понять узкие места (сама система - программа, производительность железа и пр.), а может даже отследитьповедение системы при перегрузках
PM MAIL   Вверх
IZ@TOP
Дата 17.1.2006, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 1
Всего: 73



alPacino, что то мне подсказывает что лучше данную систему писать не на PHP, а хотя бы на C (если хочется исполнять на сервер).
И возможно есть продукты которые разработаны для тестирования серверов, возможно есть смысл доверить данную работу именно подобным программам.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
AntonioBanderaz
Дата 17.1.2006, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Velichko Anton
**


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

Репутация: 1
Всего: 18



написать ещё пару скриптов, которые будут пользать по вашему сайту.... извиняюсь системе... можно даже ограничится одним - двумя серверами, скрипт на сервере, запускать не из браузера, а из cron параллельно получется запустить довольно много скриптов... Писал скрипт, который ползает по сайту и собирает текстовую инфу...
Код

<?php
set_time_limit(0);
error_reporting(0);
function get_content($val,$fo) {
        preg_match_all('#<a(.*)><b>(.*)</b></a>(.*)<tr><td style="padding-left:5; padding-top:5;" colspan=2 >(.*)</td>#msiUS',@file_get_contents($val),$rez, PREG_SET_ORDER); 
        for($i = 1; $i < count($rez); $i++) {
         $addr = iconv("KOI8-R", "CP1251",$rez[$i][4]);
         if(strpos($addr,"Ìîñêâà")) {
           fputs($fo, "Íàçâàíèå - ".iconv("KOI8-R", "CP1251",$rez[$i][2]).'<br>'."Àäðåñ - ".$addr.'<p>'."\r\n\r\n");
           echo "Çàïèñàíî â ôàéë:<br /> Íàçâàíèå - ".iconv("KOI8-R", "CP1251",$rez[$i][2]).'<br />'."Àäðåñ - ".$addr.'<p>'."\r\n\r\n";
         }
        }
}
$razdels = array("http://www.XXXXXX.ru/search.php?id_r=1&param=r", 
                   "http://www.XXXXXX.ru/search.php?id_r=2&param=r",
                   "http://www.XXXXXX.ru/search.php?id_r=5&param=r",
                   "http://www.XXXXXX.ru/search.php?id_r=4&param=r",
                   "http://www.XXXXXX.ru/search.php?id_r=6&param=r",
                   "http://www.XXXXXX.ru/search.php?id_r=7&param=r",
                   "http://www.XXXXXX.ru/search.php?id_r=8&param=r",
                   "http://www.XXXXXX.ru/search.php?id_r=9&param=r",
                  "http://www.XXXXXX.ru/search.php?id_r=10&param=r",
                   "http://www.XXXXXX.ru/search.php?id_r=21&param=r");
                   
$fo = fopen("1.html","w");
foreach($razdels as $val) {
    for($i = 1; $i < 50; $i++)
        get_content($val."&page=".$i, $fo);
}
?>

Добавлено @ 15:22
В случае с вашей системой, можно ограничится просто открытием...


--------------------
ГЫ... 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

Внимание: данный раздел предназначен для решения сложных, нестандартных задач.

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


 




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


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

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