Скорость работы разных релизов

#1 29 мая 2011 в 03:41
В последнее время мне все чаще приходят сообщение с моего хоста о том, что была превышена допустимая нагрузка на MySQL
Протестировав сайт понял что он также и долго открывается
Сайт: slavyanskaya-kultura.ru
Хост: Питерхост
Версия двига: 1.6.2
Трафик: 1500 в сутки

Причем что самое «плохое» трафик неуклонно растет, что конечно приведет к еще большим тормозам и еще большему неудовольствию хостера, который по тихонько уже начинает закидывать мою почту недовольными предупреждениями.

Наконец задался вопросом перехода на версию 1.8 но при этом хочется в начале узнать насколько более быстрее и оптимизированей новый релиз? Будет ли сайт работать быстрей?

Также хочу привести частичный фаил ошибок базы, в принципе из-за которой основные и тормоза

# User@Host: dbu_15[dbu_15] @ [192.168.5.74]
# Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 942108
SELECT id FROM cms_stats WHERE (ip = '178.154.162.29' AND page = '/blogs/staroslavjanskie-kapisha-kak-oni-vygljadeli-i-chto-na-nih-nahodilos');
# Time: 110528 23:47:09
# User@Host: dbu_15[dbu_15] @ [192.168.5.74]
# Query_time: 4 Lock_time: 0 Rows_sent: 5 Rows_examined: 802673
SELECT con.*,
con.pubdate as fdate,
u.nickname as author,
u.login as author_login,
IFNULL(COUNT(cm.id), 0) as comments
FROM cms_category cat, cms_users u, cms_content con
LEFT JOIN cms_comments cm ON cm.target='article' AND cm.target_id=con.id
WHERE con.published = 1 AND con.showlatest = 1 AND con.user_id = u.id
AND (con.is_end=0 OR (con.is_end=1 AND con.enddate >= '2011-05-28 23:47:05' AND con.pubdate <= '2011-05-28 23:47:05'))
AND con.category_id = cat.id
GROUP BY con.id
ORDER BY con.pubdate DESC
LIMIT 45, 5;
# Time: 110528 23:47:22
# User@Host: dbu_15[dbu_15] @ [192.168.5.74]
# Query_time: 5 Lock_time: 0 Rows_sent: 5 Rows_examined: 802703
SELECT con.*,
con.pubdate as fdate,
u.nickname as author,
u.login as author_login,
IFNULL(COUNT(cm.id), 0) as comments
FROM cms_category cat, cms_users u, cms_content con
LEFT JOIN cms_comments cm ON cm.target='article' AND cm.target_id=con.id
WHERE con.published = 1 AND con.showlatest = 1 AND con.user_id = u.id
AND (con.is_end=0 OR (con.is_end=1 AND con.enddate >= '2011-05-28 23:47:17' AND con.pubdate <= '2011-05-28 23:47:17'))
AND con.category_id = cat.id
GROUP BY con.id
ORDER BY con.pubdate DESC
LIMIT 75, 5;
# Time: 110528 23:47:32
# User@Host: dbu_15[dbu_15] @ [192.168.5.74]
# Query_time: 5 Lock_time: 0 Rows_sent: 5 Rows_examined: 802708
SELECT con.*,
con.pubdate as fdate,
u.nickname as author,
u.login as author_login,
IFNULL(COUNT(cm.id), 0) as comments
FROM cms_category cat, cms_users u, cms_content con
LEFT JOIN cms_comments cm ON cm.target='article' AND cm.target_id=con.id
WHERE con.published = 1 AND con.showlatest = 1 AND con.user_id = u.id
AND (con.is_end=0 OR (con.is_end=1 AND con.enddate >= '2011-05-28 23:47:27' AND con.pubdate <= '2011-05-28 23:47:27'))
AND con.category_id = cat.id
GROUP BY con.id
ORDER BY con.pubdate DESC
LIMIT 80, 5;
# Time: 110528 23:48:05
# User@Host: dbu_15[dbu_15] @ [192.168.5.74]
# Query_time: 2 Lock_time: 0 Rows_sent: 100 Rows_examined: 2150
SELECT c.id as id,
c.target as target,
c.target_id as target_id,
c.target_link as target_link,
c.content as content,
c.guestname,
c.pubdate as fpubdate,
IFNULL(c.user_id, 0) as user_id,
IFNULL(u.nickname, '') as author,
IFNULL(u.login, '') as author_login,
IFNULL(v.total_rating, 0) as rating
FROM cms_users u, cms_comments c
LEFT JOIN cms_ratings_total v ON v.item_id=c.id AND v.target='comment'
WHERE (c.user_id=u.id OR c.guestname<>'') AND c.published=1 AND (c.target="article" OR c.target="blog" OR c.target="palbum" OR c.target="photo" OR c.target="userphoto" OR c.target="catalog" OR c.target="boarditem" OR c.target="faq" OR c.target="shopitem")
GROUP BY c.id
ORDER BY c.pubdate DESC
LIMIT 100;
# Time: 110528 23:48:14
# User@Host: dbu_15[dbu_15] @ [192.168.5.74]
# Query_time: 2 Lock_time: 0 Rows_sent: 100 Rows_examined: 2150
use db_gdtb_15;
SELECT c.id as id,
c.target as target,
c.target_id as target_id,
c.target_link as target_link,
c.content as content,
c.guestname,
c.pubdate as fpubdate,
IFNULL(c.user_id, 0) as user_id,
IFNULL(u.nickname, '') as author,
IFNULL(u.login, '') as author_login,
IFNULL(v.total_rating, 0) as rating
FROM cms_users u, cms_comments c
LEFT JOIN cms_ratings_total v ON v.item_id=c.id AND v.target='comment'
WHERE (c.user_id=u.id OR c.guestname<>'') AND c.published=1 AND (c.target="article" OR c.target="blog" OR c.target="palbum" OR c.target="photo" OR c.target="userphoto" OR c.target="catalog" OR c.target="boarditem" OR c.target="faq" OR c.target="shopitem")
GROUP BY c.id
ORDER BY c.pubdate DESC
LIMIT 100;
# Time: 110528 23:48:52
# User@Host: dbu_15[dbu_15] @ [192.168.5.74]
# Query_time: 3 Lock_time: 0 Rows_sent: 0 Rows_examined: 942115
SELECT id FROM cms_stats WHERE (ip = '95.37.40.111' AND page = '/main/pages-11');
# Time: 110528 23:48:53
# User@Host: dbu_gdtb_15[dbu_gdtb_15] @ [192.168.5.74]
# Query_time: 4 Lock_time: 0 Rows_sent: 100 Rows_examined: 2150
SELECT c.id as id,
c.target as target,
c.target_id as target_id,
c.target_link as target_link,
c.content as content,
c.guestname,
c.pubdate as fpubdate,
IFNULL(c.user_id, 0) as user_id,
IFNULL(u.nickname, '') as author,
IFNULL(u.login, '') as author_login,
IFNULL(v.total_rating, 0) as rating
FROM cms_users u, cms_comments c
LEFT JOIN cms_ratings_total v ON v.item_id=c.id AND v.target='comment'
WHERE (c.user_id=u.id OR c.guestname<>'') AND c.published=1 AND (c.target="article" OR c.target="blog" OR c.target="palbum" OR c.target="photo" OR c.target="userphoto" OR c.target="catalog" OR c.target="boarditem" OR c.target="faq" OR c.target="shopitem")
GROUP BY c.id
ORDER BY c.pubdate DESC
LIMIT 100;
# Time: 110528 23:49:30
# User@Host: dbu_15[dbu_15] @ [192.168.5.74]
# Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 942117
SELECT id FROM cms_stats WHERE (ip = '178.49.36.212' AND page = '/rss/content/1/feed.rss');
# Time: 110528 23:49:48
Кто нибудь скажет будут ли такие же ошибки при переходе на 1.8
#2 29 мая 2011 в 06:25
при таком подходе к размещению и наполнению контента трудности будут на любом релизе, в логе нет ошибок это просто статистика запросов (лимиты бешеные, если честно)… нужно менять настройки в админке на более разумные и убрать большие превью из анонсов статей и новостей
#3 29 мая 2011 в 11:50
Александр, тормоза вызывает модуль "последние комментарии". Если в настройках отключить опцию "показывать комментарии гостей", тормоза пройдут. Далее: в 1.8 по умолчанию при установке создаются необходимые индексы на таблицах, вы можете посмотреть демо sql дамп и сделать себе такие же индексы.
p.s. на 1.8 надо однозначно переходить по многим причинам.
#4 29 мая 2011 в 15:21
Я прошу прощения, может я не совсем в тему, но почему никто не смотрит в сторону web-optimizer? Ведь с его помощью можно поднять скорость сайта, а именно движка instant до 95 из 100.
#5 29 мая 2011 в 16:17


Александр, тормоза вызывает модуль "последние комментарии". Если в настройках отключить опцию "показывать комментарии гостей", тормоза пройдут. Далее: в 1.8 по умолчанию при установке создаются необходимые индексы на таблицах, вы можете посмотреть демо sql дамп и сделать себе такие же индексы.
p.s. на 1.8 надо однозначно переходить по многим причинам.

Fuze
А как можно посмотреть какой модуль вызывает тормоза?
#6 29 мая 2011 в 17:10

до 95 из 100

Thanatognozija
А если нужно до 98?
#7 29 мая 2011 в 22:06

А если нужно до 98?

Очень Серый
Я уверен, что это возможно с web-optimizer, но с полной версией. Я сказал до 95 потому, что сам разгонял максимум до 97. Для этого необходимо сделать css спрайты и оптимизировать все фотографии. Более того, придется так, или иначе отказаться от некоторых модулей, загружающих страницу. Я думаю, что можно достичь результата в 98 если главную страницу оставить с минимльным количеством модулей. На 98 работает гугл… :)))) smile
#8 29 мая 2011 в 22:15

На 98 работает гугл

Thanatognozija
Да, замечал, чет гугл притормаживает немного. Наверно на про версию у них деньжат маловато. ))
#9 29 мая 2011 в 22:22

Наверно на про версию у них деньжат маловато. ))

Очень Серый
В webo есть услуга комплексной оптимизации, мне кажется, что гугл просто купил скрипт, но не заказал комплексной услуги… хотели справиться своими силами, ан… не тут то было…
А в целом, относительно webo хочу сказать — это супер, мне очень нравится (не считать это рекламой, хотя, пусть будет так, это реклама, данный инструмент действительно работает), тем более бесплатен для некоммерческого использования. Вот, сейчас включил еще несколько функций и сайт показывает 97 из 100… :))) еще чуть-чуть и я гугл… rofl
#10 29 мая 2011 в 22:43

А как можно посмотреть какой модуль вызывает тормоза?

Да кстати как? Или все через базу и логи? Может есть более удобный инструмент? Или в админке что-то?

Я прошу прощения, может я не совсем в тему, но почему никто не смотрит в сторону web-optimizer?

Слышал и о нем, какой вот только лучше использовать? От гуг ла или от вебо?
#11 29 мая 2011 в 22:53

Да кстати как? Или все через базу и логи? Может есть более удобный инструмент? Или в админке что-то?

Александр
Я смотрю на это через админку у хостера, мне хостер предоставляет такую услугу: "Процессорная нагрузка на сервер", а там я смотрю, что и насколько загрузило.

акой вот только лучше использовать? От гуг ла или от вебо?

А я не знаю, что разве у гугл есть такой продукт, как он называется тогда? Я пользуюсь WEBO Site SpeedUp, а инструментами гугл измеряю скорость, например, вот: pagespeed.googlelabs.com/онлайн сервис.
#12 30 мая 2011 в 09:11
версия 1.8 работает минимум в два раза быстрее чем 1.6.2
к тому же в 1.6.2 есть известные уязвимости
вам нужно обновиться как можно быстрее
#13 30 мая 2011 в 12:38

версия 1.8 работает минимум в два раза быстрее чем 1.6.2
к тому же в 1.6.2 есть известные уязвимости
вам нужно обновиться как можно быстрее

Администратор

Спасибо большое, буду делать.
И не подскажете еще один момент. После того как я перейду на 1.8 мне скорей всего стоит очистить таблицу cms_stats в базе т.к. в ней скопилось огромное колл-во инфы, лично у меня страниц с выводом по 30 записей 31592, это очень загружает базу.
Не подскажите, каким там запросом правильно очистить эту таблицу?
#14 30 мая 2011 в 12:41

Не подскажите, каким там запросом правильно очистить эту таблицу?

Александр

в phpMyAdmin при просмотре таблицы есть вкладка "Очистить"
запрос: TRUNCATE TABLE cms_stats
#15 30 мая 2011 в 13:24
Большое спасибо… нет огромное за все подсказки всем
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.