Brain must be ON
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Brain must be ON - 2008-02-06 20:57:32.373333
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
Чет у мну седня хорошее настроение, решил пофлудить попусту:) Счас занимался написанием системы для управления проектами фирмы (да вообщем не занимался, а все время туда чет новенькое придумывается). Итак, сидим своим кодерским отделом, работаем себе. Один паренек слушает музыку (видео с фестиваля) с сервера. Чет его задолбало, снимает наушники, и говорит (неточная цитата, но смысл тот) "А че у нас видео с локалки тормозит, вернее иногда пропадает…". Ну все сразу: "Хз, а всмысле?". Я в этот момент, как раз думал, а че у меня скриптяга, которая выдает инфу о проектах, чет как-то мендленно работает. Оказалось, что эти вещи связанны. Сервер являлся одновременно файловым и интранет сервером. Получилось так, что если кто-то заходит на список проектов фирмы серв начинал глючить по-страшному. Решили посмотреть в чем дело. Законектились к серваку, врубили диспетчер задач, обновляем страницу проектов и видим, что в этот момент загрузка сервера достигает 99%!! Оказалось, что я через чур сложный для мускула запрос накатал, который должен был обработатся 3 раза подряд.
SELECT p.*, DATE_FORMAT(e.ctime,"%H:%i %d:%m:%Y") As frmt_date, u.name FROM `projects` p
LEFT JOIN `events` e ON e.tid=
(
SELECT id FROM `tasks` t WHERE id=
(
SELECT tid FROM `events` WHERE tid IN
(
SELECT id FROM `tasks` WHERE `pid`=p.id
) ORDER BY ctime DESC LIMIT 1
) LIMIT 1
)
LEFT JOIN `users` u ON u.id = e.uid WHERE p.type = 'seo' AND p.id IN
(
SELECT pid FROM `tasks` WHERE uid = 1
)
AND p.status = 'current'
Конечно там в коде и другие запросы, но этот оказался черезчурным и 1 подобный запрос выполнялся 1.20 сек. (незабываем умножить на 3 :) ) Счас то уже все исправил и запрос выполняется за 0.03 сек. Короч не знаю зачем я топик создал, но всем спасиб кто дочитал до этого места^^
|
|
|
RE: Brain must be ON - 2008-02-06 21:02:15.503333
|
|
|
T
Сообщений: 1100
Оценки: 0
Присоединился: 2006-01-14 00:15:36
|
Я в мускуле неочень… но всёравно расскажи в чём дело было то ?
|
|
|
RE: Brain must be ON - 2008-02-06 21:02:51.830000
|
|
|
Andromeda
Сообщений: 541
Оценки: 0
Присоединился: 2006-09-04 14:53:50
|
Гуд
|
|
|
RE: Brain must be ON - 2008-02-06 21:16:54.890000
|
|
|
Technologist
Сообщений: 3590
Оценки: 0
Присоединился: 2006-10-28 20:28:06.943333
|
Мускул это моветон.
|
|
|
RE: Brain must be ON - 2008-02-07 10:16:55.690000
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
ОМГ! Lex_Voodoo скока он у тя выполняется??? Я в мускуле неочень... но всёравно расскажи в чём дело было то ? Просто мускул чет медленно обрабатывает запросы с 3й вложенностью)
|
|
|
RE: Brain must be ON - 2008-02-07 10:33:56.986666
|
|
|
saimon 2metra
Сообщений: 4281
Оценки: 0
Присоединился: 2007-01-26 10:56:51.426666
|
quote:
ORIGINAL: Technologist Мускул это моветон. У тя акцесс рулит? :)
|
|
|
RE: Brain must be ON - 2008-02-07 10:42:43.616666
|
|
|
Lex_Voodoo
Сообщений: 7328
Оценки: 0
Присоединился: 2004-12-07 13:55:12
|
quote:
ОМГ! Lex_Voodoo скока он у тя выполняется??? ~3 сек. на slave-сервере (индексы рулят!), для таблиц c сотнями тысяч записей это не много. quote:
У тя акцесс рулит? :) Видимо Oracle. Technologist же у нас известный специалист по базам данных [sm=bv.gif]
|
|
|
RE: Brain must be ON - 2008-02-07 12:25:54.570000
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
Lex_Voodoo решил ,все таки, прочесть твой запрос) А он не такой и сложный, просто он офигенно длинный и много арифметики…
|
|
|
RE: Brain must be ON - 2008-02-08 05:45:57.386666
|
|
|
Lex_Voodoo
Сообщений: 7328
Оценки: 0
Присоединился: 2004-12-07 13:55:12
|
Да, конечно, просто несколько подзапросов в одном. Но выглядит эффектно :))
|
|
|
RE: Brain must be ON - 2008-02-08 10:38:49.250000
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
quote:
Но выглядит эффектно :)) согласен)
|
|
|
|
|