Т.к. я предоставляю только хостинг, то оптимизация движков меня не
интересует (хотя они кривые до ужаса).
> надо гонять тесты как минимум
тесты чего ? понятно что если поставить 2 CPU по 4 Core то будет
быстрее
вот вам тема для размышления (случай из жизни)
http://si.infonet.ee/lj/cpu-day.png
1 - старый сервер (2 x Xeon 2.8)
2 - новый сервер (2 x Quard Core Xeon)
3 - добавили 1 индекс
шаг 1 -> 2 клиенту стоил 5K EUR
шаг 2 -> 3 примерно 1 час изучения базы данных человеком который
ничего не знает о приложении, запросах и т.п
а результат помоему вполне очевиден.
это я к тому что если у него там юзеры гоняют запросы LIKE '%aaa% по
блобам то
новых CPU на долго не хватит. по этому и прошу человека посмотреть что
у него жрет CPU
(я вполне доверяю счетчикам CPU современных ОС)
> было бы неплохо писать модель процессора
в данном случае это не имеет значения, а на память я конечно их не
помню.
3 пользователя - запусщенные cgi процессы из под пользователей.
видно, что mysql лидирует в пожирании ресурсов.
проблема оказалась в функции similar_topics()
которая генерила такие запросы
# User@Host: forum[forum] @ localhost []
# Query_time: 2 Lock_time: 0 Rows_sent: 5 Rows_examined: 62552
SELECT * FROM forum_topics WHERE forum_id IN
(1,2,18,20,3,60,4,6,7,8,65,9,10,11,12,13,15,22,16,17,23,19,21,24,81,30,29,27,93,31,28,70,33,34,35,36,37,38,39,40,41,42,59,47,89,48,90,69,49,50,51,52,94,61,79,54,55,73,74,75,76,72,77,78,82,83,84,62,53,85,57,67,68,88,66,64,91,92,63,25,80,26,44,43,58,46,45)
AND tid != 141630 AND title IS NOT NULL AND approved=1 AND (LOWER
(title) LIKE ('%Wheel%') OR LOWER(title) LIKE ('%adapters%') OR LOWER
(title) LIKE ('%spacers%') OR LOWER(title) LIKE ('%уменьшение%') OR
LOWER(title) LIKE ('%оффсета%')) ORDER BY last_post DESC LIMIT 0,5;
результат отключения данной функции хорошо виден на графике.
у вас как минимум несколько вариантов:
1. наращивать мощность железа.
2. загнать юзеров в vps и зарезать им ресурсы.
3. оптимизировать пользовательские приложения.
P.S. "Слава" быдлокодерам.
On Feb 3, 1:46 pm, si <sitni...@gmail.com> wrote:
> > неправильно составленный реквест к БД может убить любой процессор
>
> полностью согласен. свежий пример. буквально на днях оптимизировали
> dedicated сервер. на нем стоить только IPB форум.
> вот графикиhttp://si.infonet.ee/lj/oscar-cpu-week.png
>
> проблема оказалась в функции similar_topics()
> которая генерила такие запросы
> # User@Host: forum[forum] @ localhost []
> # Query_time: 2 Lock_time: 0 Rows_sent: 5 Rows_examined: 62552
> SELECT * FROM forum_topics WHERE forum_id IN
> (1,2,18,20,3,60,4,6,7,8,65,9,10,11,12,13,15,22,16,17,23,19,21,24,81,30,29,2-7,93,31,28,70,33,34,35,36,37,38,39,40,41,42,59,47,89,48,90,69,49,50,51,52,9-4,61,79,54,55,73,74,75,76,72,77,78,82,83,84,62,53,85,57,67,68,88,66,64,91,9-2,63,25,80,26,44,43,58,46,45)
+1 очень большой цирк.
xen, vmware - слишком тяжелые инструменты....
jail не умеет делить ресурсы, VDS_Manager то еще гавно.
OpenVZ - класная штука, но memory overcommitment расставляет все на
свои места (который в VE работает по другим прицнипам.)
Самописными скриптами строите или есть какое-то публичное решение
(всмысле скрипты) ?
В гугле навскидку немного не то, или в урезаном виде...
2009/3/26 Борис Долгов <bo...@dolgov.name>:
--
С уважением,
Александр Найденко
-------------------------------------
тел. +7 916 267 97 58
тел. +7 495 506 97 01
Сейчас все выглядит в другом свете!