[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Performance testing
MatrixGod
всем привет!

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

и так,
у меня есть некий график который отражает производительность (Performance) моего сайта. если быть более точным, это обычный линейный график, ось Х которого это время, а ось У это время ответа неких компонент. график высчитывает среднее время ответа этих компонент каждую минуту на протяжение 24 часов. думаю все понятно.

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

допустим, мой порог это 1.5 секунды. выше этого уже плохо.

внимание вопрос:
мне нужно обработать все данные за последнии 24 часа и вернуть один из 3 возможных ответов: хорошая производительность, нормальная производительность, плохая производительность.

подскажите пожалуйста алгоритм/идею как лучше всего ответить на этот вопрос.

заранее всем благодарен!
sergeiss
Я тебе вечером ответ напишу, т.к. с телефона сейчас. А ты пока напиши, какие у тебя вообще критерии оценки хорошо/плохо.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Valick
а чего тут думать
1) инсертим в базу значения, а потом делаем выборку
и смотрим общее количество меньше 1, от 1 до 1.5 и выше 1.5
кто больше "того и тапки"
2) можно посчитать среднее значение, но тогда хотя бы отсечь некоторый порог который не должен влиять на результат.
__
первый вариант на мой взгляд более правильный в данном случае



_____________
Стимулятор ~yoomoney - 41001303250491
sergeiss
Цитата (MatrixGod @ 3.02.2013 - 04:04)
допустим, мой порог это 1.5 секунды. выше этого уже плохо.
...
подскажите пожалуйста алгоритм/идею как лучше всего ответить на этот вопрос.

Вот только до компа добрался... До этого всё с телефона отвечал, больше суток. Там, на телефоне, нереально сделать элементарную цитату, типа той, что чуть выше я только что сделал.

По делу. Ты так и не ответил полностью на вопрос о том, какие же у тебя критерии оценки? Вот эта фраза "допустим, мой порог это 1.5 секунды. выше этого уже плохо" еще ни о чем не говорит. За 24 часа у тебя набежит много тысяч измерений. Тебе надо или количество определить, или процент плохих измерений. Например, если 5% измерений превышают порог, то это - плохо. Если от 2% до 5% - то "терпимо" smile.gif Менее 2% - хорошо.

Второй вариант оценки, более навороченный. Сначала оцениваешь аналогично предыдущему описанию, но не за сутки, а, допустим, за час. Или за полчаса. Затем смотришь, какие часы проблемные, сколько их, проблемных часов или получасовок.
Например, ты можешь выставить такие оценки: 20-24 "хороших" часа (когда за час было менее 2% процентов плохих) - это хорошо, менее 20 часов - плохо. Причем при условии, что в среднем за сутки было "хорошо". А если за сутки было "плохо", то пофиг, сколько было проблемных часов, тогда всё "плохо".
Ну, и далее можно придумывать кучу всяких вариантов оценки smile.gif От тебя зависит, как ты оценить хочешь.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
NaroSando
Вариант. При отправке данных пользователем отмечаем время отправки после отмечаем время следующей отправки. Отнимает друг от друга. Получаем разницу. Делаем с ней что хотим. Так нормально?
NaroSando
Добавлю. Чтоб вывести хорошо нормально плохо. Хватит пары строк. И не обязательно php js вполне хватит. Тут нужно только сделать проверку. Например:
var time= 'Время затраченное на отправку второго пакета данных. То что высчитали до этого.'
if(time=='Нужное число. По мне лучше без точки. Для корректной работы. Дошли слухи до меня что порой браузеры не очень воспринимают такие числа. ')
{//Что-то делаем.}

Вот такой набросочеГ. :lol:
sergeiss
NaroSando - ты о чем? И ты кто вообще???

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
NaroSando
Цитата
NaroSando - ты о чем? И ты кто вообще???
О возможном решении(теоретически) вопроса. Но если не прав прошу не ругайте лучше уж укажите что не так smile.gif
Игорь_Vasinsky
sergeiss
Цитата
И ты кто вообще???

пьёшь? я тоже biggrin.gif

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
asdf27
Речь о VPS? Тогда измерение в корне не верно. Нужно определить время пиковой нагрузки и снимать результаты именно по этому промежутку. Допустим вечером идет пик нагрузки, а под утро он нулевой... значения уровняются до середины, а реальная картина будет иной... возможно что вечером сервер практически лежит, а утром всё ок.

Есть сервисы тестирования нагрузки.
waldicom
asdf27 прав, иначе получится "средняя температура по больнице", а нахрена оно надо?
И вообще для чего такая статистика? Ответ "хорошая производительность, нормальная производительность, плохая производительность" просто вообще "ниочем".


_____________
Свои мозги еще никто не отменял.
Телепатов нету.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.