Какая скорость должна считаться нормальной?

Статус
В этой теме нельзя размещать новые ответы.

Demiurg

Guest
>Тот форум что установлен здесь генерирует страници за 0,2 - 0,6 секунды
смелое утверждение.
 

Yuriy_S

-=PHP-Club=-
Андрей, я так думал, просто в моем форуме слишком много писать прийдется <?php ?> :)
2. ONK с шаблонами и классами типа Template работать умею, делал как то целый портал. Скорость была получше конечно, но и делал я его более месяца :), но форум делать пока не буду на них, ты прав.
В общем всем огромное спасибо!
p.s Demiurg - у меня тоже щас генерит от 0.15 до 0.43 сек., думаю сделав как вы посоветовали будет намного больше!
 

Yuriy_S

-=PHP-Club=-
Вот, сделал, вынес все что мог!
Скорость стала получше, но не то что бы супер, когда выводится вообще все 1 циклом и ничего больше нету :)
Вы говорите что этот форум генерит за 0.2-0.6 секунды, мой форум генерит страницу из 70 записей в бД (30 Кб.) за 0.5 сек.,
20 записей - от 0.15 до 0.19 сек.
это нормально?

p.s И ещё есть 1 вопрос, напишу сюда, что бы не открывать новую тему. Кроме как HTTP_REFERER чем можно ещё воспользоваться для возврата юзера на пред. траницу, и есть ли что нибудь такое, где глубина ссылки на предыдущую страницу не равна 1, то есть что бы можно было обратися на предыдущую предыдущей,? во как сказанул :)
 

ONK

Пассивист PHPСluba
Автор оригинала: Demiurg
>Тот форум что установлен здесь генерирует страници за 0,2 - 0,6 секунды
смелое утверждение.
Я подробно тестировал этот движок, версии 2.7.
Страница просмотра перечня тем с выводом 100тем на страницу у меня генерировалась за 0,7 - 1.1секунду (очень высокая нестабильность результатов).Таже страница но с выборкой по 5 тем генерировалась за 180 - 200милисекунд, но по 5тем форум никто не просматривает.

скрипт просмотра сообщений в темах, с выводом 50сообщений на страницу генерировал страници за 0,6 - 0,9секунды.

Установленная тут версия более старая, и вней отключены многие навороты. Но всёравно среднее время генерирования страници наверняка хуже 0,3с.....

У этого форума убогий метод работы с шаблонами (через eval()), вот и тормозит он. А так хорошая, мощная вещь.
 

Yuriy_S

-=PHP-Club=-
он мне нравится, я круче никогда не видел форума!!!
Demiurg, Larson или ещё кто нибудь знающий, скажите пож-ста как мне после такого запроса выводить данные из той и другой таблицы, я просто не знаю. :(
вот это должно остаться по идее...
while($row=mysql_fetch_array($zapros)){
а вот тут как вывести допустим с таблицы user поле name и с таблицы message поле mess ?
}
 

Yuriy_S

-=PHP-Club=-
В общем запрос я сделал методом тыка :)
вывод - не изменился, я открыл для себя теперь огромную возможность :)
Скорость вывода в моем форуме:
вывод 50 тем: 0.1 сек, вывод 30 тем - 0.05 - 0.07 сек.
Вывод сообщений: 115 штук за 0.6 сек.
Я думаю что это вполне приличная скорость!
Всем огромное спасибо!
 

Demiurg

Guest
ONK, дело в том, что время выполнения любой программы зависит как от самой программы так и от железа на котором она выполняется, кроме того, нужно учитывать, какие еще преложения запущены на машине. Поэтому о скорости выполнения говорят обычно только в соотношение с другим временем выполнения на той же машине с теми же условиями.
 

Yuriy_S

-=PHP-Club=-
Как запросом типа такого:
PHP:
 $result=mysql_query("select * from topic left join message on topic.id=message.lid WHERE topic.fid='$forumid' ORDER BY topic.last_time DESC LIMIT $mn,$kol_mess",$con);
выбрать из таблицы message максимальное значение id и count(id) ?
Я знаю что в обычных можно функцией MAX(); но с такими запросами я работаю впервые. :)
p.s запрос этот должен выводить последний ответ + кол-во сообщений на странице с топиками.
 

ONK

Пассивист PHPСluba
Автор оригинала: Demiurg
ONK, дело в том, что время выполнения любой программы зависит как от самой программы так и от железа на котором она выполняется, кроме того, нужно учитывать, какие еще преложения запущены на машине. Поэтому о скорости выполнения говорят обычно только в соотношение с другим временем выполнения на той же машине с теми же условиями.
Согласен. Я сравнивал ещё с двумя подобными системами. PHPBB генерирует страници в среднем в 2-2,5 раза быстрее. Но он не так наворочен и использует неплохой обработчик шаблонов.
 

ONK

Пассивист PHPСluba
Yuriy_S, надо сгруппировать запрос по идентификатору форумов, тогда можно использовать функции count() max() min() sum()...
 

Yuriy_S

-=PHP-Club=-
ONK я понимаю что нада, но как...
У меня конечно же в таблице с темами имеется поле fid (ид форума) и в таблице с наименованием форумов - есть поле с уник. удент. форума.
Так мне кто-нибудь поможет?
 

Yuriy_S

-=PHP-Club=-
делаю так:
PHP:
$result=mysql_query("select t1.*, t2.iv from topic AS t1, message AS t2  WHERE t1.id=t2.lid AND t1.fid='$forumid' LIMIT $mn,$kol_mess",$con);
но, не получается выбрать MAX(id) или count(id) с таблицы message :((
скажите, как?...
 

Demiurg

Guest
Юра, изучай sql не может все за тебя форум делать.
 

Yuriy_S

-=PHP-Club=-
PHP:
$result=mysql_query("select t1.*, count(t2.id)  from topic t1, message t2  WHERE t1.id=t2.lid  AND t1.fid='$forumid'  GROUP BY t2.id LIMIT $mn,$kol_mess",$con);
при выводе топиков, выводится только 1 топик раз 10...
да и как потом мне с этого запроса вывести значение возвращаемое count(id)..
Не знаю что и делать уже...:(
 

ONK

Пассивист PHPСluba
Группируй по идентификатору форума. (t1.fid)


...... COUNT(*) AS num ....

На выходе лови поле 'num'.
 

Yuriy_S

-=PHP-Club=-
...... COUNT(*) AS num ....

На выходе лови поле 'num'.
что значит ...... COUNT(*) AS num ... ? напиши в запросе это.
На выходе, то есть mysql_result($result, 'num'); так чтоли? я не знаю как по другому выводить значение возвращаемое запросом для второй таблицы...
И если есть у кого нить линк на FAQ по сложным запросам, то просьба нарисуйте ссылочку.
 

Yuriy_S

-=PHP-Club=-
О, как!
PHP:
$result=mysql_query("SELECT t1.*, count(t2.id) AS num, MAX(t2.vrema) as maxid, MAX(t2.avtor) AS avt FROM topic AS t1, message AS t2 WHERE t1.id=t2.lid AND t1.fid='$forumid' GROUP BY t1.last_time DESC  LIMIT $mn,$kol_top",$con);
Вот я сделал сам, стоило только сесть и подумать.
Всем огромное спасибо за помощь!
на данный момент выборка данных на странице топиков идет от 0.09 сек, до 0.2, Железо: Celeon 533, Ram 256, Windows NT 5.0, PHP Version 4.1.2, MySql - 3.23.39.
Кстати, а php 4.2.3 нормальный? стоит ставить, или там ещё баги есть?
 

Yuriy_S

-=PHP-Club=-
ещё забыл спросить, в моем запросе MAX(t2.vrema) и MAX(t2.avtor), vrema - в формате dmy:his автор - имя автора, Нормально ли использовать в моем запросе это?
У меня так работает, пока без глюков.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху