Оптимизация... и это все о нем.[решено]

Главные вкладки

Аватар пользователя darkdim darkdim 21 апреля 2010 в 13:26

Доброго времени суток.
Извините что к Вам обращаемся, сами мы не местные, поиском пользоваться не умеем, книжек не читаем и английским языкам не обучены.А серьезно, нужен дельный совет.

Суть проблемы: есть сервер - Процессор Intel(R) Core(TM)2 CPU 6300 @ 1.86GHz X 2
Оперативная память 6122 Mb
Файл подкачки (swap) 1023 Mb
Размер дискового пространства 230965 Mb
Количество процессов 82
Продолжительность работы 1 hours 21 minutes
Средняя загрузка 0.30 0.19 0.66

на нем 4 сайта, слабо нагруженных(до 2-3 тыс. посетителей в сутки).
Поставил сайт на Drupal 6.16, правда много модулей, порядка 100. Список модулей приведу ниже. Оптимизировал сайт с помощью модулей Authcache, CacheRouter, JavaScript Aggregator, CSS Gzip. Кеширование включено, кеши на вьювсах включены.
Devel под admin показывает
Page execution time was 3016.4 ms. Executed 473 queries in 119.32 milliseconds.
Memory usage:
Memory used at: devel_init()=3.23 MB, devel_shutdown()=85.77 MB.

под user
Page execution time was 2573.96 ms. Executed 224 queries in 54.04 milliseconds.
Memory usage:
Memory used at: devel_init()=3.22 MB, devel_shutdown()=73.09 MB.

Включаю сайт в он-лайн режим, снимаю ограничение .htaccess доступа - сайт начинает жутко тормозить, тормозят и другие сайты на серваке. Раньше было 2Гб оперативы, сервер просто ложился с концами. Подняли до 6Гб, но ситуация кардинально не изменилась. Техподдержка "морозится" мол оптимизируйте свои скрипты, потому что переполняется память и сервер падает. В момент открытия 20-40 анонимов на сайте.

Что, какие модули могут так вешать сервер? Понятно, что от вьювсов с панелями не получится пока отказаться, так же хотелось бы сохранить основную функциональность. Что посоветуете не использовать?

и второе, техподдержка по-моему не шарит, как можно оптимизировать вебсервер под работу Drupal. Есть какой-либо алгоритм, который можно предложить им проделать с настройками сервера, или настройки проводятся индивидуально по обстоятельствам(железо, ос, конфигурация)?

Это http://www.mydrupalbook.ru/ уже читал и проделал, это Drupal_6_Performance_Tips тоже))

Отчет модуля о системной информации
Drupal.
Версія 6.16
Файл налаштувань sites/default/settings.php
Планувальник Востаннє виконано 3 години 53 хв тому
Шлях файлової системи sites/default/files

Користувачі
Сума 12 accounts
Стан
Діючий 12 accounts
Заблоковано 0 accounts

Модулі
1 Pixel Out 6.x-2.5
Ad 6.x-2.2
Ad Owners 6.x-2.2
Ad Weight Probability 6.x-2.2
Ad channel 6.x-2.2
Ad click filter 6.x-2.2
Ad embed 6.x-2.2
Ad file cache 6.x-2.2
AddToAny 6.x-2.4
Administration menu 6.x-1.5
Advanced Forum 6.x-1.1
Advanced Forum More Styles 6.x-1.0-alpha2
Advanced Profile Kit 6.x-1.0-beta3
Aggregator 6.16
Ajax markup 6.x-1.0
Alinks 6.x-1.0-rc1
Authcache 6.x-1.0-rc2
Author Pane 6.x-1.1
BBCode 6.x-1.2
Better Formats 6.x-1.2
Better Messages 6.x-1.13
Block 6.16
Block user messages 6.x-1.1
Blog 6.16
Bonus: Paged Feed 6.x-1.0
Bonus: Panels 6.x-1.0
Bonus: Views Spy 6.x-1.0
CSS Gzip 6.x-1.3
CacheRouter 6.x-1.0-rc1
Calendar 6.x-2.2
Calendar Popup 6.x-2.2
Chaos tools 6.x-1.3
Checkbox Validate 6.x-2.1
Comment 6.16
Comment Notify 6.x-1.4
Comment subjects 6.x-1.5
Conditional Fields 6.x-1.1
Contact 6.16
Contact attach 6.x-1.x-dev
Content 6.x-2.6
Content Permissions 6.x-2.6
Content Templates 6.x-1.1
DB Maintenance 6.x-1.2
DHTML Menu 6.x-3.5
Database logging 6.16
Date 6.x-2.4
Date API 6.x-2.4
Date Locale 6.x-2.4
Date Popup 6.x-2.4
Date Repeat API 6.x-2.4
Date Timezone 6.x-2.4
Date Tools 6.x-2.4
Devel 6.x-1.19
Email 6.x-1.2
External Ad 6.x-2.2
External Links 6.x-1.9
Fasttoggle 6.x-1.3
Fieldgroup 6.x-2.6
FileField 6.x-3.2
FileField Paths 6.x-1.4
Filter 6.16
Fivestar 6.x-1.19
Flag 6.x-1.2
Flash Ad 6.x-2.4
Flat comments 6.x-2.0
Flat comments existing 6.x-2.0
FlowPlayer 6.x-2.5
FlowPlayer 3 6.x-2.5
Forum 6.16
Galleria 6.x-1.0
Global Redirect 6.x-1.2
Google Analytics 6.x-2.2
HTML Ad 6.x-2.2
Highslide 6.x-1.2
IE Unlimited CSS Loader 6.x-1.1
IMCE 6.x-1.3
Image Ad 6.x-2.2
ImageAPI 6.x-1.6
ImageAPI GD2 6.x-1.6
ImageCache 6.x-2.0-beta10
ImageCache UI 6.x-2.0-beta10
ImageField 6.x-3.2
ImageField Tokens 6.x-1.0
Imagecache Canvas Actions 6.x-1.6
Imagecache Color Actions 6.x-1.6
Imagecache Text Actions 6.x-1.6
JW Image Rotator 3 6.x-2.5
JW Media Player 3 6.x-2.5
JW Media Player 4 6.x-2.5
JavaScript Aggregator 6.x-1.4
Javascript tools 6.x-1.0
Legal 6.x-2.2-beta4
Lightbox2 6.x-1.x-dev
Link 6.x-2.8
Locale 6.16
Menu 6.16
Mime Mail 6.x-1.0-alpha2
Mime Mail CSS Compressor 6.x-1.0-alpha2
Mini panels 6.x-3.3
Modr8 6.x-1.3
Mollom 6.x-1.13
Node 6.16
Node Reference 6.x-2.6
Node Referrer 6.x-1.0-rc1
Nodewords 6.x-1.11
Nodewords - basic meta tags 6.x-1.11
Number 6.x-2.6
Option Widgets 6.x-2.6
PDF version 6.x-1.10
PHP filter 6.16
Page manager 6.x-1.3
Panel nodes 6.x-3.3
Panels 6.x-3.3
Path 6.16
Path redirect 6.x-1.0-beta6
Pathauto 6.x-2.x-dev
Poll 6.16
Poormanscron 6.x-2.2
Printer-friendly pages 6.x-1.10
Private messages 6.x-1.1
Privatemsg Email Notification 6.x-1.1
Privatemsg filter 6.x-1.1
Profile 6.16
ProfilePlus 6.x-1.1
Quick Tabs 6.x-2.0-rc4
Quote 6.x-1.1-beta2
Remote ads 6.x-2.2
Rules 6.x-1.2
Rules Administration UI 6.x-1.2
Rules Forms support 6.x-1.2
Rules Scheduler 6.x-1.2
SWF Tools 6.x-2.5
SWFObject 6.x-2.5
SWFObject2 6.x-2.5
Scrollable 6.x-1.x-dev
Search 6.16
Send by e-mail 6.x-1.10
SimpleViewer 6.x-2.5
Smileys 6.x-1.0
Syslog 6.16
System 6.16
System information 6.x-2.0
Tagadelic 6.x-1.2
Taxonomy 6.16
Text 6.x-2.6
Text Ad 6.x-2.2
Throttle 6.16
Tiny Tiny MCE 6.x-1.12
Token 6.x-1.12
Token Filter 6.x-1.0
Token actions 6.x-1.12
TokenSTARTER 6.x-1.12
Transliteration 6.x-2.1
Trigger 6.16
UFO 6.x-2.5
Update status 6.16
Upload 6.16
User 6.16
User Reference 6.x-2.6
User Stats 6.x-1.0-rc1
User badges 6.x-1.5
Userpoints 6.x-1.1
Userpoints Nodes and Comments 6.x-1.1
Userpoints rules integration 6.x-1.1
Views 6.x-2.10
Views Bulk Operations 6.x-1.9
Views Carousel 6.x-1.x-dev
Views Rotator 6.x-1.0-alpha2
Views Showcase 6.x-1.0-beta2
Views UI 6.x-2.10
Views content panes 6.x-1.3
Vote Up/Down 6.x-1.0-beta6
Voting API 6.x-2.3
Webform 6.x-2.9
Workspace 6.x-1.3
abuse 6.x-1.1-alpha1
getID3() 6.x-1.3
invisimail 6.x-1.2
jCarousel 6.x-1.1
jQuery Flash plugin 6.x-2.5
jQuery UI 6.x-1.3
watchlist 6.x-1.1-alpha1

Вебсервер
Тип Apache
Версія 2.2.14
Operating system FreeBSD
PHP interface cgi-fcgi

PHP.
Версія 5.2.12
Magic quotes GPC Ввімкнено
Magic quotes runtime Вимкнено
Max execution time 30
Max input time -1
Memory limit 256M
Post max size 32M
Register globals Вимкнено
Safe mode Вимкнено
Session cache limiter none
Session save handler user
Upload max filesize 32M
PHP extensions
cURL version 7.19.7
GD version bundled (2.0.34 compatible)
FreeType support Ввімкнено
JPG support Ввімкнено
PNG support Ввімкнено
Multibyte support Ввімкнено
XML support Ввімкнено
Zip support Ввімкнено
Zlib support Ввімкнено

database server.
Database connection: default
Тип MySQLi
Версія 5.0.89
Хост localhost
Port 3306
Charset utf8
Collation utf8_general_ci
Storage engine MyISAM
Uptime 2 години 13 хв
Права доступу
SELECT Дозволений
INSERT Дозволений
UPDATE Дозволений
DELETE Дозволений
CREATE Дозволений
ALTER Дозволений
INDEX Дозволений
DROP Дозволений
CREATE TEMPORARY TABLES Дозволений
LOCK TABLES Дозволений
Table prefixes
default no value

Комментарии

Аватар пользователя darkdim darkdim 21 апреля 2010 в 14:23

neochief wrote:
дайте скриншот лога запросов

всего лога или первых n-строчек "сортировка по времени выполнения"?

Аватар пользователя darkdim darkdim 21 апреля 2010 в 14:17

"xxandeadxx" wrote:
php акселератор стоит (в php модулях не видно)? nginx?

млят, но суппорт наотрез отказывается поддерживать ngnix пишут "Nginx не поддерживается нами."
вот еще что пишут "Кстати, от переполнения памяти скриптами на php nginx никак не спасет. Его
задача - раздача статического контента."
и еще ">> На условиях нашего технического сопровождения nginx мы не устанавливаем, не
>> поддерживаем и не настраиваем. Какой прирост или его отсутствие
>> производительности принесет его установка нам не известно."

Аватар пользователя vgoodvin vgoodvin 21 апреля 2010 в 14:29

"darkdim" wrote:
и второе, техподдержка по-моему не шарит, как можно оптимизировать вебсервер под работу Drupal.

Если сайт криво настроен или есть кривой модуль, то при не знании дела тут хоть богу молись. Тех поддержка не поможет.

Они скорее всего сказали правильно - Nginx не поможет, вероятнее всего идет нагрузка на базу. Да и суппорт в большинстве случаев настройкой сервера занимается только за отдельную плату, как у вас не знаю.

Надо смотреть лог запросов к БД.

Аватар пользователя xxandeadxx xxandeadxx 21 апреля 2010 в 14:37

"vgoodvin" wrote:
Надо смотреть лог запросов к БД.

чего на него смотреть) запросы выполняются на редкость быстро
Quote:
Executed 224 queries in 54.04 milliseconds.

Аватар пользователя darkdim darkdim 21 апреля 2010 в 15:53

xxandeadxx wrote:
ответ так и не последовал:
"xxandeadxx" wrote:
php акселератор стоит?

тут да, после n-го напоминания поставили.

authconfig работает через db а не apc

Аватар пользователя darkdim darkdim 21 апреля 2010 в 16:19

о, ё. Отключил все что можно, и все что нельзя. За .htaccess все работает, только убираю пароли - капец. 17 посетителей, это что супер большая нагрузка?

Аватар пользователя darkdim darkdim 10 ноября 2015 в 11:46

vgoodvin wrote:
Доступ к ssh есть? Посмотрите через top, апач ли грузит сервер.

так как полный 0 в этом... по шагам: установил putty, дал ssh, зашел, набрал top
картинка

Аватар пользователя darkdim darkdim 21 апреля 2010 в 17:28

-OC-[user=drupal wrote:
drupal[/user].org]уменьшите количество процессов httpd

да я как-то больше по php да по пиву, сейчас спрошу у гугла

Аватар пользователя darkdim darkdim 21 апреля 2010 в 18:45

сократил число модулей, показатели под admin стали такими(17 юзеров)
только мне кажется в чем-то другом дело.
Под .htaccess страницы летают, только снимаешь ограничение доступа и опять.
может кривые модули, кривые руки, ноги и т.д, но мне почему-то кажется - кривые настройки вебсервера

Page execution time was 2220.89 ms. Executed 333 queries in 96.96 milliseconds.
Memory usage:
Memory used at: devel_init()=2.55 MB, devel_shutdown()=57.67 MB.

Administration menu 6.x-1.5
Alinks 6.x-1.0-rc1
Authcache 6.x-1.0-rc2
Better Messages 6.x-1.13
Block 6.16
Bonus: Paged Feed 6.x-1.0
Bonus: Panels 6.x-1.0
Bonus: Views Spy 6.x-1.0
CSS Gzip 6.x-1.3
CacheRouter 6.x-1.0-rc1
Calendar 6.x-2.2
Calendar Popup 6.x-2.2
Chaos tools 6.x-1.3
Checkbox Validate 6.x-2.1
Content 6.x-2.6
Content Permissions 6.x-2.6
DHTML Menu 6.x-3.5
Database logging 6.16
Date 6.x-2.4
Date API 6.x-2.4
Date Locale 6.x-2.4
Date Popup 6.x-2.4
Date Repeat API 6.x-2.4
Date Timezone 6.x-2.4
Date Tools 6.x-2.4
Devel 6.x-1.19
Email 6.x-1.2
External Links 6.x-1.9
Fieldgroup 6.x-2.6
FileField 6.x-3.2
FileField Paths 6.x-1.4
Filter 6.16
Galleria 6.x-1.0
Global Redirect 6.x-1.2
Highslide 6.x-1.2
IE Unlimited CSS Loader 6.x-1.1
IMCE 6.x-1.3
ImageAPI 6.x-1.6
ImageAPI GD2 6.x-1.6
ImageCache 6.x-2.0-beta10
ImageCache UI 6.x-2.0-beta10
ImageField 6.x-3.2
ImageField Tokens 6.x-1.0
Imagecache Canvas Actions 6.x-1.6
Imagecache Color Actions 6.x-1.6
Imagecache Text Actions 6.x-1.6
JavaScript Aggregator 6.x-1.4
Javascript tools 6.x-1.0
Legal 6.x-2.2-beta4
Lightbox2 6.x-1.x-dev
Link 6.x-2.8
Locale 6.16
Menu 6.16
Mini panels 6.x-3.3
Node 6.16
Node Reference 6.x-2.6
Node Referrer 6.x-1.0-rc1
Nodewords 6.x-1.11
Nodewords - basic meta tags 6.x-1.11
Number 6.x-2.6
Option Widgets 6.x-2.6
PHP filter 6.16
Page manager 6.x-1.3
Panel nodes 6.x-3.3
Panels 6.x-3.3
Path 6.16
Path redirect 6.x-1.0-beta6
Pathauto 6.x-2.x-dev
Poormanscron 6.x-2.2
Printer-friendly pages 6.x-1.10
Quick Tabs 6.x-2.0-rc4
Scrollable 6.x-1.x-dev
Syslog 6.16
System 6.16
System information 6.x-2.0
Taxonomy 6.16
Text 6.x-2.6
Tiny Tiny MCE 6.x-1.12
Token 6.x-1.12
Token actions 6.x-1.12
TokenSTARTER 6.x-1.12
Transliteration 6.x-2.1
Update status 6.16
User 6.16
User Reference 6.x-2.6
Views 6.x-2.10
Views Bulk Operations 6.x-1.9
Views Carousel 6.x-1.x-dev
Views Rotator 6.x-1.0-alpha2
Views Showcase 6.x-1.0-beta2
Views UI 6.x-2.10
Views content panes 6.x-1.3
Webform 6.x-2.9
invisimail 6.x-1.2
jCarousel 6.x-1.1
jQuery UI 6.x-1.3

Аватар пользователя darkdim darkdim 21 апреля 2010 в 19:33

<a href="mailto:ygerasimov@drupal.org">ygerasimov@drupal.org</a> wrote:
Попробуй через firebug вкладка Net посмотреть время загрузки файлов. Возможно тормозит изза како-го нибудь файла.

ну вряд ли, из-за этого не будет грузить проц под сотку

Аватар пользователя gorr gorr 21 апреля 2010 в 19:16

Насколько видно из скриншота, памяти свободной 4 гиг, проц загружен на 20%, видимо что-то в конфигурационном файле апача не так или в .htaccess, если изменяли стандартный друпала. База, как видно отрабатывает быстро, а именно она является узким местом друпала, так что дело не в друпале, а именно в настройке апача. Что именно делаете, когда начинает тормозить?

Аватар пользователя darkdim darkdim 21 апреля 2010 в 19:31

gorr wrote:
Насколько видно из скриншота, памяти свободной 4 гиг, проц загружен на 20%, видимо что-то в конфигурационном файле апача не так или в .htaccess, если изменяли стандартный друпала. База, как видно отрабатывает быстро, а именно она является узким местом друпала, так что дело не в друпале, а именно в настройке апача. Что именно делаете, когда начинает тормозить?

суппорт посмотрел, говорит памяти хватает(теперь), но процессор грузит на 100%. .htaccess без изменений. Да, дело скорее всего в настройках апача

Аватар пользователя volocuga@drupal.org volocuga@drupal.org 21 апреля 2010 в 20:03

Криво настроен сервак - вот диагноз. Меняйте хостера. Количество запросов более чем умеренное,но как то долго они исполняются... Модулей конечно перебор малёха.

Аватар пользователя darkdim darkdim 21 апреля 2010 в 20:17

<a href="mailto:volocuga@drupal.org">volocuga@drupal.org</a> wrote:
Криво настроен сервак - вот диагноз. Меняйте хостера. Количество запросов более чем умеренное,но как то долго они исполняются... Модулей конечно перебор малёха.

к сожалению это сервак а не хостинг, не так бы было обидно, а то берут деньги якобы за настройку ПО и техподдержку, а настроить сервер не умеют.
а насчет модулей - вроде все по делу, послушаю с удовольствием от чего необходимо отказаться;)

Аватар пользователя volocuga@drupal.org volocuga@drupal.org 21 апреля 2010 в 20:26

Вы не так сделали. Есть человек gor, который держит it-patrol.com, на котором держат только друпал-сайты многие люди на этом форуме. Дайте gor-у 100 баксов (или около того) и он вам настроит как надо

Аватар пользователя darkdim darkdim 21 апреля 2010 в 21:27

<a href="mailto:volocuga@drupal.org">volocuga@drupal.org</a> wrote:
Вы не так сделали. Есть человек gor, который держит it-patrol.com, на котором держат только друпал-сайты многие люди на этом форуме. Дайте gor-у 100 баксов (или около того) и он вам настроит как надо

Это да, я кстати хотел узнать контакт этого человека, дал запрос на этом сайте, пришел ответ "has created the ticket" и дальше ссылки, но меня не пускает, нет доступа, а мой адрес не регистрирует как новый аккаунт. Пока так и не узнал.

А в принципе, такая конфигурация сервера с 2Гб памяти потянет такую конфигурацию Drupala, или половину модулей стоит повыключать?

Аватар пользователя Виктор Степаньков ака RxB Виктор Степаньк... 21 апреля 2010 в 21:34

"darkdim" wrote:
Это да, я кстати хотел узнать контакт этого человека, дал запрос на этом сайте, пришел ответ "has created the ticket" и дальше ссылки, но меня не пускает, нет доступа, а мой адрес не регистрирует как новый аккаунт. Пока так и не узнал.

Так я ж вам ответил. Вам ответ на мыло прийти должен был.
Но можете написать в личку или скайп.

Аватар пользователя darkdim darkdim 21 апреля 2010 в 22:19

RxB wrote:
"RxB" wrote:
А в принципе, такая конфигурация сервера с 2Гб памяти потянет такую конфигурацию Drupala, или половину модулей стоит повыключать?

Потянет и не такое

спасибо на добром слове, отлегло от... а хрен его знает от чего отлегло, забодал суппорт своим неумением настроить сервак. Как они сказали на просьбу настроить сервер - цитирую "Мы ни в какой мере не являемся программистами и не знаем особенностей работы разных CMS. Мы видим результаты и пытаемся локализовать проблему своими силами на сколько это возможно. Если Вы считаете, что можете сделать нашу работу лучше нас, Вы всегда можете отказаться от технического сопровождения сервера нашими администраторами, но, должен заметить, вернуться к таковому у Вас больше не будет возможности без полной переустановки системы."

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

Аватар пользователя ITCrow ITCrow 21 апреля 2010 в 23:19

Кроме вывода топа, приведите также вывод команд systat, iostat, nestat, fstat, vmstat до и после активации .htaccess, также неплохо бы увидеть логи апача за этот период.