Танкист Апокалипсиса
Понятное дело, выводы основываются на том, что я видел. Соответственно, могут быть неточности.



Query: SELECT *, if(rule_id,1,0) as closed

FROM firewall

WHERE (

(date_start<=1166552489 AND date_end>=1166552489)

OR

date_end=0

)

AND ( username="DukeSS" )

ORDER BY rule_id DESC



в этом запросе: пихать в одну из колонок (username) имя пользователя, а не его числовой идентификатор - расточительство. Если это, правда, как раз не выборка из таблицы соответсвия чисел именам.



Query: select shortname,username,userid,title from journal where shortname="dukess"

То же самое. Хотя оговорка та уже не действует.



Ещё в нескольких запросах идёт выборка по именам, и, в следующем же - по числам.



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

Комментарии
20.12.2006 в 07:54

капибара
иногда нужно сортировать по имени пользователя, а не по его ид, так что это обоснованно
20.12.2006 в 09:11

Да там вообще код чудовищный :) я теперь удивляюсь не тому что оно падает, а тому что оно иногда да работает :)
20.12.2006 в 10:15

Танкист Апокалипсиса
quirischa, с этим я согласен, но вот остальное надо бы заоптимизировать. :-)

Бенедикт, что поделать - болезнь роста. Рано или поздно придётся переписать всю систему.
20.12.2006 в 10:19

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



20.12.2006 в 10:21

капибара
DukeSS - Рано или поздно придётся переписать всю систему

благо, что теперь есть, к чему стремиться.

правда болезнь роста может запрогрессировать в смысле "мы не хотим бытьпохожими на ЖЖ".

Расширенная форма

Редактировать

Подписаться на новые комментарии