Повышение производительности. Эксперименты.

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

Аватар пользователя clubwave.ru clubwave.ru 12 декабря 2007 в 16:50

имеется сложный сайт комьюнити, разумеется куча запросов на странице, модулей тоже не мало

постараюсь тут описать, что уже сделано по пунктам, почему и что это дало.. заодно хотелось бы послушать советы и идеи, которые можно воплотить в жизнь и проверить их эффективность

1. Едем на VPS/VDS .. сделать это фактически пришлось при переваливании за 5-10 залогиненных и 500 гостей.

2. Настраиваем на VPS связку Apache+Nginx .. как не странно просто переезд на VPS ничего не дал, сайт стал работать ещё хуже.

3. Апгрейдим ресурсы VPS (память и процессор) .. настроенный Nginx по ощущениям позволяет отображать сайт из кэша неограниченное количество раз.. в частности на сайте было более 13 000 уников за день и никаких нареканий в работе не было.. Что же касается залогиненных пользователей, то тормоза начинаются примерно от 10 в онлайне (стоит заметить, что каджый активно генерирует страницы и добавляет контент)

Сейчас под сайт выделенно 1 Gb памяти и, если не ошибаюсь - 12% времени 2-х ядерного intel xeon.. ресурсы на вид не маленькие, но что мы имеем.. 1500 - 2000 гостей, 15 - 20 залогиненных постоянно, около 10 000 нодов, куча страниц, построенных с помощью Views.. сайт работает медленно, временами ужасно медленно.

Расход памяти редко переваливает за 600 Мб, тоесть грубо говоря тормозит процессор? или дело не в этом?

Мои идеи:

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

Сейчас хостер убеждает в том, что врежиме FastCGI сайт работает ещё хуже. Кто с этим сталкивался, посоветуйте что-нибудь.

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

Использовать PostgreeSQL. возможно тормоза в базе данных.. слышал что Postrgee работает быстрей.. так ли это?

У кого какие идеи? Отключать все "ненужные" модули желания нет, как и гнать с сайта зарегенных юзеров.

Комментарии

Аватар пользователя clubwave.ru clubwave.ru 12 декабря 2007 в 16:57

поправки

сейчас команда #top показывает

5-60 % процессор

35-45 процессов постоянно

использование памяти 700 - 1000 Мб..

тоесть всё? ни файл кэш ни FastCGI не помогут? Smile

Аватар пользователя clubwave.ru clubwave.ru 12 декабря 2007 в 17:23

память сожралась после перезагрузки nginx, сейчас стандартно 500-600

а как остследить какой процесс жрёт?

%mem везде мало 2-3%

Аватар пользователя coyotle coyotle 12 декабря 2007 в 17:35

TIME -- CPU Time
Total CPU time the task has used since it started. When 'Cumulative
mode' is On, each process is listed with the cpu time that it and
its dead children has used. You toggle 'Cumulative mode' with 'S',
which is a command-line option and an interactive command. See the
'S' interactive command for additional information regarding this
mode.

Аватар пользователя clubwave.ru clubwave.ru 12 декабря 2007 в 18:02

у вас есть такое желание?

и реально ли оптимизацие настроек добиться какогото результата?

можете разъяснить ситуацию с FastCGI и apache.. что из них работает быстрее в случае с друпал и Nginx?

Аватар пользователя clubwave.ru clubwave.ru 12 декабря 2007 в 18:10

по ссылке.. как оптимизировать расход памяти

*
Вариант 2. MySQL играет большую роль в системе с 128-256 Мб памяти.

[client]
#password = ваш_пароль
port = 3306
socket = /var/lib/mysql/mysql.sock

# Здесь директивы для некоторых mysql программ

# MySQL сервер
[mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
skip-locking
key_buffer = 16K
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
net_buffer_length = 8K
myisam_sort_buffer_size = 8M

# Не слушать на TCP/IP порт
#
#skip-networking
server-id = 1

log-bin

# Раскоментируйте, если используете BDB таблицы
#bdb_cache_size = 4M
#bdb_max_lock = 10000

# Раскоментируйте, если используете InnoDB таблицы
#innodb_data_home_dir = /var/lib/mysql/
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = /var/lib/mysql/
#innodb_log_arch_dir = /var/lib/mysql/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
#innodb_buffer_pool_size = 16M
#innodb_additional_mem_pool_size = 2M
# Set .._log_file_size to 25 % of buffer pool size
#innodb_log_file_size = 5M
#innodb_log_buffer_size = 8M
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50

[mysqldump]
quick
max_allowed_packet = 16M

      no-auto-rehash
      # Remove the next comment character if you are not familiar with SQL
      #safe-updates

      [isamchk]
      key_buffer = 20M
      sort_buffer_size = 20M
      read_buffer = 2M
      write_buffer = 2M

      [myisamchk]
      key_buffer = 20M
      sort_buffer_size = 20M
      read_buffer = 2M
      write_buffer = 2M

      [mysqlhotcopy]
      interactive-timeout

Вы можете принудительно отключить InnoDB, если Вы их не используете:

skip-innodb

Используются ли друпалом innodb таблицы? что это такое?

и что поменять в настройках если памяти не 128-256 а 1024?

Аватар пользователя axel axel 12 декабря 2007 в 18:25

Для экономии памяти я бы рекомендовал оставить только Nginx (правда boost под него пока не адаптирован). Fastcgi+Nginx работает быстрее, чем fastcgi+Apache, хотя не уверен, что быстрее mod_php. С Postgres без опыта работы с ним лучше не связываться - просто смена mysql на postgres ничего хорошего не даст. Boost требует настройки .htaccess и вообще-то до сих пор экспериментальный модуль. Я от него пока отказался, хотя сама идея файлового кеша на вебсервере в обход PHP - очень заманчива.

Аватар пользователя clubwave.ru clubwave.ru 12 декабря 2007 в 18:27

гы гы

как и говорилось по ссылке о расходе памяти.. у хостера никак не настроена mysql

вписал вот что:

Вариант для VPS/Dedicated с 512-1024 Мб памяти:
[mysqld]
datadir=/var/lib/mysql
skip-locking
skip-bdb
skip-innodb
skip-networking
safe-show-database
query_cache_limit=1M
query_cache_size=32M ## 32MB for every 1GB of RAM
query_cache_type=1
max_user_connections=200
max_connections=500
interactive_timeout=10
wait_timeout=20
connect_timeout=20
thread_cache_size=128
key_buffer=128M ## 128MB for every 1GB of RAM
join_buffer=1M
max_connect_errors=20
max_allowed_packet=16M
table_cache=1024
record_buffer=1M
sort_buffer_size=1M ## 1MB for every 1GB of RAM
read_buffer_size=1M ## 1MB for every 1GB of RAM
read_rnd_buffer_size=1M ## 1MB for every 1GB of RAM
thread_concurrency=4 ## Number of CPUs x 2
myisam_sort_buffer_size=64M
server-id=1
collation-server=utf8_unicode_ci
default-character-set=utf8

[mysql.server]
user=mysql
basedir=/var/lib

[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/lib/mysql/mysql.pid
open_files_limit=8192

[mysqldump]
quick
max_allowed_packet=16M

no-auto-rehash
#safe-updates

[isamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M

[myisamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M

[mysqlhotcopy]
interactive-timeout

[client]
default-character-set=utf8

чисто визаульно сайт заработал нормально, и расход ресурсов уменьшился.. посмотрим что будет дальше

<strong>axel</strong>, а что такое innodb и зачем задействовать?

Аватар пользователя clubwave.ru clubwave.ru 12 декабря 2007 в 18:39

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

нет желания попробовать понастраивать сайт для достижения оптимальной происводительности?

у FastCGI есть какието настройки по аналогии с MySQL?

на сервере с clubwave.ru FastCGI даёт ощутимый прирост в скорости генерации страниц, в частности списков

Аватар пользователя georotor georotor 12 декабря 2007 в 18:58

innodb - другой тип таблиц в mysql (по дефолту используются таблицы типа MyISAM), таблицы innodb считаются более медленными, но при этом в отличии от MyISAM поддерживают управления транзакциями

Аватар пользователя georotor georotor 12 декабря 2007 в 20:48

Отключать и включать innodb можете сколько хотите, только если вы не используете эти таблицы, это никак на производительность не повлияет.

З.Ы. Для того чтобы использовать innodb, надо использовать alter к таблицам и менять их тип, т.к. по дефолту таблицы создаются MyISAM. На сколько я понимаю Вы такими вещами не занимались.

Мне вот интересно, а если отдавать статический контент не через Nginx, а вообще с другого сервера, скажем сделать домен третьего уровня, расположенный на другом сервере и все картинки и js-ки отдавать с него, это разгрузит сервер с БД или нет?

Аватар пользователя clubwave.ru clubwave.ru 12 декабря 2007 в 23:13

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

а ещё есть ли смысл разбивки базы на несколько штук.. скажем 3:

1. таблицы юзеров и сессии

2. ноды и комменты

3. кэш

4. всё остальное

Аватар пользователя Ainur Ainur 12 декабря 2007 в 23:32

А откуда это:
3. Апгрейдим ресурсы VPS (память и процессор) .. настроенный Nginx по ощущениям позволяет отображать сайт из кэша неограниченное количество раз.. в частности на сайте было более 13 000 уников за день и никаких нареканий в работе не было.
13000 уников, это откуда?

Аватар пользователя georotor georotor 13 декабря 2007 в 1:29

и мне интересно.. может попробовать? или внутри одно сервера разницы никакой?
а ещё есть ли смысл разбивки базы на несколько штук.. скажем 3:
1. таблицы юзеров и сессии
2. ноды и комменты
3. кэш
4. всё остальное

В пределах одно визического сервера это не поможет.

неее, чёто опять всё ломается.. таймауты.. ресурсов свободных в top много.. но.. 502 Bad Getaway

Сколько пользователей было в этот момент?
Сколько памяти выделено по PHP?
----------------------------------------------------------------
Можно попробовать в БД включить журнал регистрации ошибок (log-error=имя_файла) и регистрацию медленных запросов (log-slow-queries=имя файла, long_query_time=время, для выявления медленных запросом, вроде в секундах) и посмотреть, может там что будет

Аватар пользователя job job 13 декабря 2007 в 5:33

Исходя из моей практики, могу с уверенностью сказать, что основная работа ложится на SQL сервер. Неплохо было бы использовать хранимые процедуры. С Друпалом пока знакомлюсь, поэтому в базу еще не залез, не знаю, используются ли движком и используемыми Вами модулями хранимые процедуры в БД.

А выполнение SQL запросов и вывод данных по сети происходит быстрее чем эти же операции выполнялись бы на одной машине с Апачем. В некоторых ситуациях разница в скорости может отличаться в разы. Может еще имеет смысл увеличить число детей Апача?

Поэтому, это должна быть -= однозначно =- отдельная машина. От этого и плясать. IMHO.

Конфигурация Вашего ресурса в две машины, на одной из которых Апач, ПХП и кеш страниц, на второй БД в маскараде - на мой взгляд оптимальна. Я работал с подобной конфигурацией и очень доволен ее работоспособностью. Правда, Веб машин было несколько, а машина с БД одна.

Здесь встает вопрос еще и в предоставлении Вам маскарадного адреса. Если хостер может его Вам дать, то проблем нет, а если нет, то придется ставить еще и роутер с вытекающими отсюда расходами на выделение и содержание сети IP адресов (обычно 8).

Аватар пользователя Гость Гость (не проверено) 13 декабря 2007 в 10:29

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

ссори за оффтоп, просто проблема тоже насущная и хочется понять что делать дальше.

Аватар пользователя Valeratal Valeratal 13 декабря 2007 в 11:31

эмм, я тоже в процессе переезда на VPS
у меня там будет около 128 метров оперативки (еще 128 жрет почему то PLESK)
Вот и думаю, а может и не надо
Сейчас на шаред 32 метра (гарантированных) в реале скорее всего больше (паразитируем на других сайтах) Smile

Аватар пользователя andypost@drupal.org andypost@drupal.org 13 декабря 2007 в 11:36

На мой взгляд, самое узкое место друпала это база, так что тюнить нужно в первую очередь базу.
Потом от 3 до 15 процентов удалось нагнать за счет отключения лишних модулей в апаче (mod_php) и php
В моем варианте просто анонимных посетителей почти нет, а так кэш страниц один фиг на базу ложится, просто большой объем данных гоняется.

PS: http://drupal.org/node/2601 начинал отсюда

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 13:28

georotor, один товарищ - друпаллер вчера вроде бы включил..

зарегенных было онлайн 25, не зарегенных 30 наверно, но они как я уже сказал погоды не делают.. даже когда их 200..

память на процесс пхп выделено 128 Мб, MaxClients было 30, сейчас если не ошибаюсь 128.. пока всё работает, но сейчас только 10 -15 зарегенных, ну и не сказал бы что сайт работает идеально Sad

насчёт сервера узнал подробней:

1Гб постоянной памяти
16% процессорного времени Intel Xeon.. что примерно, по словам хостера - 1,7 Ггц

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 13:32

job, интересные предложения, но несколько машин это пока не позволительное удовольствие, т.к. сайт пока грубо говоря не коммерческий..

имеет ли смысл взять второй впс под базу данных (кстати кэш друпала тоже хранится в базе данных)?

Аватар пользователя job job 13 декабря 2007 в 16:02

clubwave.ru, я так понимаю, что Друпал построен таким образом, что все операции, которые производят пользователи, так или иначе затрагивают БД, а значит, нагрузка на процессор огромная из-за постоянных "дерганий" БД запросами. Повторюсь, БД - это отдельная машина в Вашем случае. А по поводу кеша, чтобы не быть голословным, приведу наглядный пример работы проекта WURFL. В этом проекте скриптами генерируется около 13 000 статических страниц на стороне Веб сервера. Реакция молниеносная. Я сейчас работаю с этой технологией, знаю о чем говорю.

И еще, спросите у владельца домена друпал.ру сколько машин у него работают под этим проектом. Возможно, он использует указанную мной конфигурацию.

И еще одно еще :), не пользуйтесь "Левыми" инструментами. Сейчас так много экспериментальных технологий, в которых масса дыр. Будьте осторожны.

Аватар пользователя axel axel 19 декабря 2007 в 2:13

drupal.ru сейчас живёт на одной машине (рядом с несколькими более посещаемыми ресурсами) и по моим прикидкам выдержит увеличение посещаемости минимум вдвое без смены конфигурации. Но в целом, вынос БД на отдельный сервер - логичный и правильный метод для крупных проектов. Как и создание кеша из статических страниц.

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 13:34

Valeratal, правильно мыслите.. оставайте на шаред, и не ставьте несколько сайтов на аккаунт.. впс со 128 метрами будет тормозить

Аватар пользователя andypost@drupal.org andypost@drupal.org 13 декабря 2007 в 14:52

с FastCGI не работал, не до экспериментов, но интрересно услышать мнение сталкивающихся
сейчас гоняю 6й друпал - ощутимо шустрее работает, правда еще не все портировал

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 15:21

andypost@drupal.org, вот например сайт clubwave.ru сейчас работает с FastCGI.. на куда более слабой впс, чем виновник темы, и он там не один.. так вот время генерации страниц, как я уже писал в режиме FastCGI в 2-3 раза быстрей, но на впс с сайтом, о котором эта тема, говорят, что FastCGI работает медленней.. переключиться легко видимо нельзя.. сегодня постараюсь в эту тему углубиться

Аватар пользователя Valeratal Valeratal 13 декабря 2007 в 15:26

clubwave.ru
да на шаред уже памяти не хватает периодически а больше уже нет шареда
собственно поэтому и затеял переезд
хотя ведь вариант есть оставить на шаред базу SQL
только 2 вопроса
1. как прописывать адрес базы
2. трафик, у хостера ограничение на соотношение входящий/исходящие

Аватар пользователя coyotle coyotle 13 декабря 2007 в 15:28

clubwave.ru, SlavviR, не за что.

Про fastcgi/mod_php пытался найти в интернете. Все пишут совершенно противоположное. Видимо надо ставить и сравнивать.

PS Хорошо бы собрать все, что получится выяснить по этой теме в доку.

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 15:33

Valeratal, если уже нет шареда, то да, но сам смотри как работает clubwave.ru.. а там 256 метров...

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

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

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 15:35

coyotle, вот вот.. но как я уже писал, чисто поверхностно мне кажется Nginx быстрее работает с FastCGI, тем более везде Nginx упоминается в связке с FastCGI..

доку? хоть бы заметки какие собрать..

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 16:11

clubwave.ru, стойте, что значит отдельная машина? отдельную впс под бд взять и настроить там всё оптимально для больших нагрузок на бд?

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

Что за левые инструменты? Nginx? без него вообще труба

Аватар пользователя job job 13 декабря 2007 в 16:44

Мой меседж таков: разделите Веб и БД на разные машины.

Я не знаю как, в Вашем случае, отконфигурирован VPS. Наверняка на хостинговой машине, кроме Вас есть еще и другие виртуальные машины, которые "жрут" ресурсы процессора. Процессор штука не бездонная, может и закончиться. Поэтому, я и говорю, чтобы Ваша база данных была на другой физической машине.

Я не работал с nginx. Но если его использует Рамблер, у него есть на то основания.

Аватар пользователя andypost@drupal.org andypost@drupal.org 13 декабря 2007 в 16:27

Вообще стоит посмотреть еще на запросы и модули, которые перегружают базу (слишком часто обращаются)
например все поносят локализацию, а она далеко не лидер в нагрузке, мне например пришлось отказаться от модуля path ибо на каждый l() то есть создание ссылки на страницы оно лезло в базу

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 16:27

разные впс подойдут?

и если под бд мы берём самую мощную впс, то какую брать под вэб?

сколько ресурсов хватит друпалу? хотя бы в процентном соотношении с бд?

Аватар пользователя job job 13 декабря 2007 в 17:06

Исходя из того, что мне стало известно о Вашем ресурсе, могу сделать следующие выводы:

1. Аппаратные ресурсы хостинга на границе выживаемости.
или
2. Вы выбрали не тот VPS.
или
3. Возможно неправильно отконфигурирован Ваш Веб сервер. Основную долю памяти Вашего VPS забирает именно он.

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

Аватар пользователя coyotle coyotle 13 декабря 2007 в 16:37

По поводу path если не изменяет память, кто-то из местных делал отличный патч очень сильно уменьшающий количество запросов этим модулем...

Соврал, это для перевода http://drupal.ru/node/6766

Аватар пользователя andypost@drupal.org andypost@drupal.org 13 декабря 2007 в 17:15

clubwave.ru по поводу как смотреть, первое это модуль devel, а потом более тонкое это профилирование функций, как описано у дриса http://buytaert.net/drupal-performance - там много интересных статей по этому поводу ну и как писал уже http://drupal.org/node/79237

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 17:25

job

1. хостинг более чем живучий.. по крайней мере я не сталкивался с другими шаред хостингами сравнимыми по производительности.

2. что есть не тот ВПС? сперва был ВПС без Nginx но с plesk.. вот он был точно не тот, работал не лучше шаред хостинга и стоил дороже

3. возможно, я даже уверен в этом! mysql тоже не был никак сконфигурирован.. вот собственно тут и пытаюсь решить проблемы конфигурации, т.к. увеличение ресурсов пока не представляется возможным, кроме того мне не кажется что их очень мало Smile

вы имеете ввиду купить отдельные физический сервер только под базу данных? для проекта с 2000 хостов?

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 17:31

andypost@drupal.org, ок, спасибо за ссылки, буду изучать

по теме..

добавили логирование запросов бд более 2-х секунд, пока пусто.. сайт работает относительно быстро , 24 юзера, 34 гостя..

пока скорейшее увеличение скорости вижу в модификации my.conf

вот бы кто-то по пунктам разобрал, что есть что и что стоит попробовать поменять:

[mysqld]
datadir=/var/lib/mysql
skip-locking
skip-bdb
skip-innodb
skip-networking
safe-show-database
query_cache_limit=1M
query_cache_size=32M ## 32MB for every 1GB of RAM
query_cache_type=1
max_user_connections=200
max_connections=500
interactive_timeout=10
wait_timeout=20
connect_timeout=20
thread_cache_size=128
key_buffer=128M ## 128MB for every 1GB of RAM
join_buffer=1M
max_connect_errors=20
max_allowed_packet=16M
table_cache=1024
record_buffer=1M
sort_buffer_size=1M ## 1MB for every 1GB of RAM
read_buffer_size=1M ## 1MB for every 1GB of RAM
read_rnd_buffer_size=1M ## 1MB for every 1GB of RAM
thread_concurrency=4 ## Number of CPUs x 2
myisam_sort_buffer_size=64M
server-id=1
collation-server=utf8_unicode_ci
default-character-set=utf8

[mysql.server]
user=mysql
basedir=/var/lib

[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/lib/mysql/mysql.pid
open_files_limit=8192

[mysqldump]
quick
max_allowed_packet=16M

no-auto-rehash
#safe-updates

[isamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M

[myisamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M

[mysqlhotcopy]
interactive-timeout

[client]
default-character-set=utf8</em>

Аватар пользователя dm66 dm66 14 декабря 2007 в 11:14

Скажу честно, пока сам не пользовался, не было необходимости, но на сколько понял, zend - коммерческий продукт, за который надо платить, причем кажется с ежегодной лицензией, а eAccelerator и APC бесплатные аналоги. Причем где то читал, что по производительности последние версии eAccelerator-a (APC вроде как чуть медленнее) обходят оригинальный zend.

Аватар пользователя axel axel 19 декабря 2007 в 2:21

Я вот вообще использую Xcache Smile Ставить - то в чём лучше разберётесь. По каждому из продуктов разные отзывы. Имхо, любой из перечисленных акселераторов полезен. Как и Zend Optimizer для оптимизации кода (но с последним - нередки проблемы совместимости с акселераторами).

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 20:54

ну да я начинаю гуглить на каждую тему и вот уже 150 вкладок и всё ножно читать..

окружение.. ну linux, apche, nginx

или не это имеется ввиду?

просто сразу спрашиваю совет, потомучто сам врядли смогу настроить, а хостер не горит желанием со мной экспериментировать

Аватар пользователя cwer cwer 13 декабря 2007 в 21:26

Акселератор пхп (eAccelerator или apc) обязательно ставить. Пхп скрипты работают быстрее. Там что-то как-то кешируется, но быстрее
Nginx идет всегда в связке с fastcgi ибо по-другому не может напрямую с пхп работать. Либо так либо через апач. Пхп в таком случае советую собрать отдельно (в отдельной папке) в режиме fastcgi, тогда можно будет сравнительно легко переключаться от Nginx + Apache + mod_php до Nginx + FastCgi. Но это малосущественно, если есть достаточно свободной оперативки. Куда серьезнее вопрос с процессором. У меня сейчас процессор забирает именно бд. Пытаюсь потихоньку оптимизировать, но увы пока не особо получается Smile

Аватар пользователя Skirr Skirr 13 декабря 2007 в 21:36

Какие ужасы тут творятся, и это всего-то при 30 зарегиных. Может и нестоит делать крупный сайт с множеством модулей на Друпале?

Пока столкнулся с нехваткой 32Мб при включение 10 модулей, перешёл на 64Мб.

Судя по этой животрепещущей теме, лучше ещё 10 раз отмерить..
(извините, если не в тему, но уже вторые сутки сопереживаю)

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 22:22

Skirr, если продолжить вашу мысль - лучше вообще не делать сайты Smile

и это не 30 зарегенных а 30 залогиненных одновременно, причём активно тыкающих, загружающих оргомные фотки и добавляющих контент..

людям интересно, проект уникален, спасибо за это друпалу.

Аватар пользователя cwer cwer 13 декабря 2007 в 22:51

Ну у меня сейчас чуть больше 300 одновременно залогиненных и 150 гостей. Сервер пень 2.4 , гиг оперативки. Оперативки свободно 500 мб где-то, а вот проца не хватает походу Sad

Аватар пользователя clubwave.ru clubwave.ru 13 декабря 2007 в 22:26

cwer, а какиенибудь недостатки у пхпакселератора есть? вот у нгинкс есть например.. если не столь существенно и есть недостатки может быть не ставить?

а nginx + fastcgi и без апача, такое бывает вообще?

приму к сведению, что установить лучше в отдельную папку, спасибо..

а как примерно переключаться можно?

Аватар пользователя cwer cwer 13 декабря 2007 в 22:48

у акселератора пхп недостатков не встречал. У nginx тоже если грамотно сделать, а вот пхп в fastcgi может глючить. У меня иногда сбрасывал соединение 4й пхп неизвестно почему. С 5м проблем нет пока, тьфу тьфу тьфу.
> а nginx + fastcgi и без апача, такое бывает вообще?
А зачем там апач? Все работает без него Smile

Переключаться.. Редактируя кофниг nginx. Сейчас у вас бэкендом должен апач. Т.е. по 80му порту nginx, по какому-то другому порту апач, которому передаете php файлы. Запускаете по 3му порту пхп. После этого можете переключить передачу пхп файлов на fastcgi, редактируя конфиг nginx. Не понравится, вернете назад Smile
Интересная заметка - http://blog.kovyrin.net/2006/04/17/typical-nginx-configurations/lang/ru/

Аватар пользователя Ainur Ainur 13 декабря 2007 в 23:06

Кто пробовал сделать как на drupal.org через memcache и reverse proxy?

>Ну у меня сейчас чуть больше 300 одновременно залогиненных и 150 гостей.<
cwer, что за сайт такой крупный? и почему так мало рессурсов расходует?

вот мой top при "Сейчас на сайте 50 пользователя и 130 гостей."

top - 21:02:55 up 316 days, 20:53,  1 user,  load average: 0.22, 0.44, 0.44
Tasks: 114 total,   1 running, 113 sleeping,   0 stopped,   0 zombie
Cpu(s):  1.3% us,  0.3% sy,  0.0% ni, 98.3% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:   2056276k total,  1910112k used,   146164k free,    23644k buffers
Swap:  2096440k total,    17012k used,  2079428k free,  1391996k cached
Аватар пользователя cwer cwer 14 декабря 2007 в 0:01

ща погуглил говорят memcache медленнее eaccelerator и apc. По отзывам быстрее всего eaccelerator.
>cwer, что за сайт такой крупный? и почему так мало рессурсов расходует?
сайт http://www.cwer.ru
сейчас вечером

 Tasks: 102 total,   1 running, 101 sleeping,   0 stopped,   0 zombie
Cpu(s): 23.7% us,  2.3% sy,  0.0% ni, 70.7% id,  3.2% wa,  0.2% hi,  0.0% si
Mem:   1025980k total,   499448k used,   526532k free,     6760k buffers
Swap:  2096472k total,     3412k used,  2093060k free,   151832k cached

cpu колеблется от 20 до 70% Sad
Все кушает бд и пхп. Что делать с этим не знаю Sad

До установки nginx apache отжирал всю свободную оперативку. Советую поставить его Wink
Это у вас 2 гига оперативки на один сайт уходит?

Аватар пользователя Ainur Ainur 14 декабря 2007 в 2:03

Это у вас 2 гига оперативки на один сайт уходит?
Да, на один сайт.
ща погуглил говорят memcache медленнее eaccelerator и apc. По отзывам быстрее всего eaccelerator.
Интересно, почему тогда именно его выбрал drupal.org
Если я правильно понял, eaccelerator оптимизирует php скрипты, и находится в стадии разработки, memcached же кэширует запросы к базе данных, является стабильным продуктом и работает на livejournal.
В тесте нужно учитывать, к примеру, модули, размер базы данных. Сайт с меню и двумя нодами покажет иные результаты, чем сайт с базой данных в 2 гигабайта.

сейчас у меня такая ситуация:

top - 23:20:35 up 316 days, 23:11,  1 user,  load average: 1.36, 1.10, 1.03
Tasks: 116 total,   2 running, 114 sleeping,   0 stopped,   0 zombie
Cpu(s): 32.0% us,  5.0% sy,  0.0% ni, 58.8% id,  4.2% wa,  0.0% hi,  0.0% si
Mem:   2056276k total,  2020532k used,    35744k free,    21840k buffers
Swap:  2096440k total,    17012k used,  2079428k free,  1477572k cached
Аватар пользователя clubwave.ru clubwave.ru 14 декабря 2007 в 0:07

cwer, круто.. стока оперативки свободной.. ну мне кажется у меня пожоще всё устроенно, всмысле не щедя железо.. http://blondie.ru

кстати сейчас всё в дауне, зашли гугль и яху вместе..

Аватар пользователя RC RC 14 декабря 2007 в 1:08

По поводу path - есть модуль Advanced cache

path_cache.patch - Caches the results of drupal_lookup_path() per page. If you don't have the path module turned on and you don't have any path aliases at all, you don't need this patch. Otherwise this will cut one query per page for every link on that page. Thus if you have pages that have hundreds of links, this patch will cut hundreds of queries from that page.

В двух словах - если на странице было 100 ссылок, то это занимало 100 запросов к БД(поправьте, если не прав). После установки модуля - запрос только 1 - к таблице кеша ссылок этой страницы.

Есть маленькое но - надо вносить изменения в ядро

Аватар пользователя Ainur Ainur 14 декабря 2007 в 2:05

В двух словах - если на странице было 100 ссылок, то это занимало 100 запросов к БД(поправьте, если не прав).
При чем тут количество ссылок на странице, к количеству запросов к базе данных?

Аватар пользователя RC RC 14 декабря 2007 в 2:23

При том, что если стоит модуль path, значит у ссылок может быть "алиас", вот Друпал и проверяет ссылку на алиас.

Т.е. если есть http://drupal.ru/node/10092, но Вы задали алиас для этой ссылки http://drupal.ru/performance - то Друпал это проверит, и выведет http://drupal.ru/performance вместо http://drupal.ru/node/10092.

п.с. извините, если плохо объяснил.

Аватар пользователя andypost@drupal.org andypost@drupal.org 14 декабря 2007 в 6:01

По поводу акселераторов (eaccelerator, zend optimizer, ionCube) - php это интерпретатор, соответственно, на каждое обращение к скрипту(ам) он занимается парсингом(разбором) и компиляцией в байт код скриптов, эти программы созданы специально для кэширования байт кода в памяти, скорость работы скриптов увеличивается в разы.
Вообще не представляю, как без них можно запускать что-либо - у друпала порядка 2-х метров исходного кода и на каждое обращение сервер должен парсить заново? вы удивляетесь, куда жрется процессор - на парсинг в первую очередь!

По поводу алиасов, если их действительно много, то имеет смысл загонять их в ассоциативный массив, в стандартной поставке 5-го друпала, как я уже писал, на каждое обращение к l(...) вызывается drupal_lookup_path посмотрите её исходный код, часто используемые альясы кешируются в ассоциативном массиве, но когда вы генерите на странице море разнородных ссылок, по типу /node/xxx/edit, то работа этого метода напрочь не эффективна - мало того, что на каждую ссылку обращается к ассоциативному массиву, так еще и лезет в базу.

Аватар пользователя clubwave.ru clubwave.ru 14 декабря 2007 в 11:21

ок, значит ставим eAccelerator полюбому

Memcahce тоже ставим? кэширование запросов как вообще работает? Субд разве их не кэширует

Аватар пользователя Ainur Ainur 14 декабря 2007 в 12:51

clubwave.ru,

Shouldn't the database do this?

Regardless of what database you use (MS-SQL, Oracle, Postgres, MysQL-InnoDB, etc..), there's a lot of overhead in implementing ACID properties in a RDBMS, especially when disks are involved, which means queries are going to block. For databases that aren't ACID-compliant (like MySQL-MyISAM), that overhead doesn't exist, but reading threads block on the writing threads.
memcached never blocks. See the "Is memcached fast?" question below.

What about MySQL 4.x query caching?

MySQL query caching is less than ideal, for a number of reasons:

  • MySQL's query cache destroys the entire cache for a given table whenever that table is changed. On a high-traffic site with updates happening many times per second, this makes the the cache practically worthless. In fact, it's often harmful to have it on, since there's a overhead to maintain the cache.
  • On 32-bit architectures, the entire server (including the query cache) is limited to a 4 GB virtual address space. memcached lets you run as many processes as you want, so you have no limit on memory cache size.
  • MySQL has a query cache, not an object cache. If your objects require extra expensive construction after the data retrieval step, MySQL's query cache can't help you there.

If the data you need to cache is small and you do infrequent updates, MySQL's query caching should work for you. If not, use memcached.
http://www.danga.com/memcached/

Аватар пользователя andypost@drupal.org andypost@drupal.org 14 декабря 2007 в 14:19

Zend optimizer всегда был бесплатным, комерческие это core, platform и прочие
По быстродействию не сравнивал, не было необходимости

добавлено: одно дело кэшировать запросы, другое данные
прикручивание memcached ничего не даст без засовывания в него нужных данных, а это подразумевает правку исходников друпала

Аватар пользователя axel axel 19 декабря 2007 в 2:32

Модуль memcached под друпал тем и занимается, что подменяет cache.inc на работающий с мемкешем, вместо БД.

Аватар пользователя clubwave.ru clubwave.ru 14 декабря 2007 в 19:19

cwer, по поводу этого - http://dmn42.livejournal.com/31784.html?usescheme=lynx&format=light&nc=2

поставил мне хостер eAccelerator и, ну может и совпадение, но пациент летает, как не летал никогда..

20 залогенных, 42 гостя

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

правда подозреваю, что довольно скоро опять всё испортится, но пока офигеть!

п.с. Axel, будь добр, поставь модуль quote.. общение в 100 раз более продуктивным будет

Аватар пользователя axel axel 19 декабря 2007 в 2:44

clubwave.ru wrote:
cwer
п.с. Axel, будь добр, поставь модуль quote.. общение в 100 раз более продуктивным будет

поставил )

Аватар пользователя clubwave.ru clubwave.ru 19 декабря 2007 в 16:51

axel wrote:
clubwave.ru wrote:
cwer
п.с. Axel, будь добр, поставь модуль quote.. общение в 100 раз более продуктивным будет

поставил )

пасибо!

Второй день подряд на благополучном сервере останавливается апач.. видимо из-за нехватки памяти.. какие меры принять?

Аватар пользователя clubwave.ru clubwave.ru 14 декабря 2007 в 19:23

вопрос к знатокам.. как из SSH окошка (программа Putty) скопировать что-то в буфер обмена виндовса (Ctrl+C не работает)

Аватар пользователя Ainur Ainur 14 декабря 2007 в 20:33

clubwave.ru, просто нужно выделить текст курсором мыши, ничего не нажимая, типа левую кнопку мыши удерживаете и выделяете, потом если paste сделать нужно в окно Putty, то правый клик мышью в окно. Ctrl+C, в данном случае, обрывает операцию.
clubwave.ru, с удовольствием, вот сайт: http://www.italia-ru.it/

Аватар пользователя clubwave.ru clubwave.ru 14 декабря 2007 в 19:36

Ainur, вижу у вас самая жестокая ситуация с расходом памяти.. может тоже сайтик покажете?

и ещё вопрос sleeping процессы это что?

Аватар пользователя clubwave.ru clubwave.ru 14 декабря 2007 в 19:47

Ainur, вобщем заключение всё объясняет.. если сайт не слишком часто обновляется и размер кэшируемых данных не большой - использовать кэш MySQl, если наоборот - memcached

Но тогда вопрос - что есть слишком частое обновление? когда кэш MySQl может работать во вред?

Аватар пользователя Ainur Ainur 14 декабря 2007 в 20:46

У меня только память кушается, и то, учитывая трафик это в 2,5 раза больше чем у коллеги cwer, но load average все время в рамках 0.65, 0.35, 0.25, только в часы пик до от 2-ух до 5-яти подымается (особенно если в чате человек 7-10 сидит).
Это все с учетом того, что у меня не стоит memcached и ни какого акселератора нет. Вот сейчас я затеил upgrade к новому году, будем ставить memcached.
p.s. drupal 4.7

Но тогда вопрос - что есть слишком частое обновление? когда кэш MySQl может работать во вред?
clubwave.ru, думаю сайт на друпале с энным количеством модулей, переводами и алиясами с трафиком больше 1000 уникальных в сутки довольно интенсивно использует MySQL.

Аватар пользователя georotor georotor 14 декабря 2007 в 20:25

clubwave.ru, > Но тогда вопрос - что есть слишком частое обновление?
Я так понимаю как пример биллинговые системы.

clubwave.ru, не могли бы вы описать что было сделано кроме установки eAccelerator, так сказать результурющая конфигурация к которой вы пришли?

Аватар пользователя andypost@drupal.org andypost@drupal.org 14 декабря 2007 в 20:41

Да что тут объяснять - он поставил акселератори все стало летать по причине описаной мной выше, все остальное не даст такого прироста в скорости(разы) и будет актуально когда опять пододет к пределу или база или память, тогда и будут важны те самые ускорения(это проценты).

Аватар пользователя cwer cwer 14 декабря 2007 в 21:04

Неужели никто не натыкался на отличный сайт посвященный оптимизации сервера под крупные проекты?
Хорошая ссылка:
http://2bits.com/articles/drupal-performance-tuning-and-optimization-for...

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

Аватар пользователя clubwave.ru clubwave.ru 14 декабря 2007 в 21:07

georotor, ну как бы всё что было сделано, начиная с переезда на VPS описано в этой теме..

Nginx +Apache + mod_php + eAccelerator

правился файл my.conf

тут он тоже встречался, на предидущей странице..

пока что всё.. в дальнейшем всётаки хочется опробовать FastCGI, но не раньше, чем сайт снова начнёт тормозить..

впрочем, не стоит слишком радоваться, у меня и раньше были приросты производительности, потом всё благополучно рушилось и выпадали таймауты!

пока могу сказать - ставьте eAccelerator, видимо друпалу с кучей модулей он действительно необходим!

Аватар пользователя Ainur Ainur 14 декабря 2007 в 21:45

clubwave.ru, мне тут коллега говорит один, что таймауты у нигикса это часто встречающаяся вещь, но он, таки да, быстрей чем апач.
В нотпад чтоб вставить просто ctrl+v

Аватар пользователя clubwave.ru clubwave.ru 14 декабря 2007 в 21:11

Ainur, а если я хочу скопировать в виндовс нотепад?

сайт посмотрел, прикольно.. видно тоже железо не жалеете.. кстати, чат большую нагрузку даёт?

Аватар пользователя clubwave.ru clubwave.ru 14 декабря 2007 в 21:18

Ainur, а как вы умудрились до 5-й версии не проапгрейдиться до сих пор? вот где был прирост так прирост!!

расскажите потом про memcached! а eAccelerator не будете?

я лично думаю в дальнейшем отдельную впс под бд сделать

Аватар пользователя Ainur Ainur 15 декабря 2007 в 3:24

Ainur, а как вы умудрились до 5-й версии не проапгрейдиться до сих пор? вот где был прирост так прирост!!
clubwave.ru, времени нет, при том кое-какие вещи нужно под пятую переделывать, с нового года все будет по другому.

Аватар пользователя clubwave.ru clubwave.ru 14 декабря 2007 в 21:20

cwer, давай! ссылка конечно хорошая, но столько английских букв сильно утомляет.. к томуже буржуи про nginx походу не знают.. а зря!!

Аватар пользователя clubwave.ru clubwave.ru 14 декабря 2007 в 23:20

стоп! ещё раз.. как скопировать? выделить и зажать вторую кнопку?

таймауты нгинкса в настройках задаются.. просто когда бэкенд тормозит, нгинкс показывает таймауты.. а быстрей просто в огромное колличество раз !!

Аватар пользователя Ainur Ainur 15 декабря 2007 в 0:57

clubwave.ru, просто текст выделить, который скопировать хотите, ничего не нажимая.
А в блокнот уже стандартно пейст делаете.

Аватар пользователя clubwave.ru clubwave.ru 15 декабря 2007 в 1:48

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

Аватар пользователя Ainur Ainur 15 декабря 2007 в 3:18

kiev1, меня ничего не смущает, я немного по-другому проблемы решаю чем ставить наугад разные оптимизаторы. Wink

Аватар пользователя clubwave.ru clubwave.ru 15 декабря 2007 в 14:50

опять всё летает .. блин..

хостер вроде как проводил какието тесты.. в результате убедил меня, что FastCGI на моём сайте использовать бесмысленно, т.к. страницы генерируются не быстрей..

собственно, пока сайт работает хорошо интереса к повышению производительности нет как такового..

Но теперь более остро стоят два других проекта..

другая впс, возможности по настройке хорошие, саппорт хороший, но сайты часто ломаются и не слишком быстро работают, правда ресурсов тут поменьше:

Virtual CPU 558 MHZ X 2
256 Mb
511 Mb swap

авторизованных пользователей на сайтах как правило нет

на одном сайте в среднем 3500 уников в сутки и 6000 просмотров, он работает с кэшем

на другом

200 уников в сутки и 2200 просмотров, работает без кэша, т.к. инет магазин

собвственно скорость работы неплохая, но! очень часто вываливается ошибка 500 - Internal Server Error или Nginx - Getaway Timeout

причём ошибка 500 вываливается даже в панеле управления сервером..

Саппорт довольно хороший, но причина обвала не выявлена до сих пор, говорят, что иногда перерасход ресурсов, хотя именно когда сайты в дауне никаких странностей в top не видно..

как быть?

для начала хочу попробовать отключть здесь FastCGI и включить mod_php .. посмотрим как это скажется на стабильности

п.с.: ну расскажите как скопировать из Putty выделенный текст!!! ну не понимаю я

Аватар пользователя vabue@drupal.org vabue@drupal.org 15 декабря 2007 в 14:53

из putty - просто выделяете левой кнопкой мышки. После выделения отпускаете её, переключаетесь в блокнот/word/поле броузера и жмёте Ctrl+v

Аватар пользователя clubwave.ru clubwave.ru 15 декабря 2007 в 15:23

last pid: 63874; load averages: 0.52, 0.38, 0.27 up 0+19:25:10 15:21:58
31 processes: 2 running, 28 sleeping, 1 stopped
CPU states: 33.3% user, 0.0% nice, 23.8% system, 0.0% interrupt, 42.9% idle
Mem: 220M Active, 36M Free
Swap: 512M Total, 29M Used, 483M Free, 5% Inuse

ого! круто!

такая ситуация сильно ужасна?

Аватар пользователя clubwave.ru clubwave.ru 15 декабря 2007 в 17:25

FastCGI тоже с eAccelerator.. на том сервере, у меня стоял FastCGI и добавление eAccelerator практически не чувствовалось, включил апач, вроде стало быстрей, раньше апач тормозил

Аватар пользователя clubwave.ru clubwave.ru 18 декабря 2007 в 20:28

clubwave.ru на другом сервере, бьюсь с производительностью, похоже там ничего не поможет.. мало 256 метров на 2 сайта.. или сервер такой.. даже не знаю.. хочу clubwave.ru на шаред перенести, правда памяти он жрёт не мало да и проца наверное тоже..

blondie.ru молодец, работает хорошо, правда сегодня заглох апач, нехватка памяти.. 1Гб ... ого

Аватар пользователя clubwave.ru clubwave.ru 19 декабря 2007 в 16:53

если я разгружу немного базу установив патч на модуль path это увеличит память доступную апачу? или может стоит в его конфигурации что-то поменять?

кто ставил memcache? что нужно сделать на сервере, чтобы попробовать?

Аватар пользователя clubwave.ru clubwave.ru 21 декабря 2007 в 13:10

хостер сообщает, что в если настроить nginx + php fastcgi не будет работать eAccelerator

насколько я знаю будет, но как их в этом убедить?

или не будет?

Аватар пользователя clubwave.ru clubwave.ru 24 декабря 2007 в 1:43

короче не получается у них настроить fast_cgi..

над или искать кто поможет или самому разбираться.. по крайней мере возможность такую дают

Аватар пользователя Валентина Валентина 2 января 2008 в 20:26

Quote:
Для MySQL:
- увеличение буферов.
- построение индексов.
- отслеживание long-queries.
- включение кэша запросов.

Для Апача + PHP
- установка любого из акселераторов. Рекомендую XCache.
- поддержка keep-alive.
- разумные таймауты.
- gzip. Нагрузка на процессор растет не очень сильно, а вот время отдачи=время существования процесса сильно уменьшается.
- вынос всей статики из-под апача - пусть nginx ее отдает, он маленький и быстрый.
- вынос всех скриптов и стилей из кода, генерируемого апачем, в отдельные файлы - пусть это отдает nginx.

Очень рекомендую memcached - правда, скрипт должен уметь с ним работать.

Разумным решением в этом случае будет включить KeepAlive и ограничить время 1-2 секундами (с помощью параметра KeepAliveTimeout).

Аватар пользователя clubwave.ru clubwave.ru 3 января 2008 в 21:37

ок, свой интернет магазан с вечноглючащего впс уношу на виртуальный хостинг..

помимо процессорного времени и объёма памяти оказывается важную роль играед хард диск..

мне пока что удалось нормально настроить тяжёлый проект только на VPS (не VDS.. на второй мне показалось что реальные ресурсы меньше заявленных) и только с хардом SCSI

может быть это всё и совпадения, но вот так вот

Аватар пользователя clubwave.ru clubwave.ru 9 января 2008 в 22:13

VladSavitsky wrote:
Я смотрел на скрин top и вижу, что у вас нет swap'а...
Память почти использована, а своп по нулям...

нету свопа, грят с такой конфигурацией своп не могут сделать и вообще говорят он типа не нужен

Аватар пользователя clubwave.ru clubwave.ru 9 января 2008 в 22:09

Natalie, в интернете эти понятия представлены как синонимы, но ...

имею я вот например одну впс и одну вдс..

на впс у меня нет свопа и есть постоянное количество ресурсов

на вдс у меня есть своп и есть какието гарантированные ресурсы и ещё какието негарантированные.. на практике первый вариант мне нравится больше..

Аватар пользователя clubwave.ru clubwave.ru 9 января 2008 в 22:11

Валентина, шутите!! конечно!!

nginx сам не настраивал, скорее всего некий дефолтный конфиг.. есть там пара параметров которые можно понастраивать, например время до таймаута..

ну и ещё были проблемы с модулем imagecache

А у вас конкретный вопрос или просто интересуетесь?

Аватар пользователя clubwave.ru clubwave.ru 9 января 2008 в 22:29

кстати, у меня в два раза выросла посещаемость

40 залогиненных / 100 гостей.. вот так вот терь

перенесли меня на новый более мощный и менее загруженный сервак, вроде всё хорошо пока..

оказывается на впс всеравно все друг от друга зависят, ну я и не сомневался..

интересно, лучше реальный селерон с сата хардом или какаято часть ксеона с scsi?

Аватар пользователя clubwave.ru clubwave.ru 21 января 2008 в 15:22

насчёт оптимизации производительности сейчас представляется вот такая конструкция:

1. сервер, на котором находится сейчас сайт - переходит исключительно под сервер БД, все файлы, вклучая скрипты распологаются на другом сервере с недорогим sata диском..

2. либо же на втором сервере расположить папку files, а на первом БД и скрипты..

что вы думаете об этом?

Аватар пользователя shamaner shamaner 26 января 2008 в 12:48

интересно, лучше реальный селерон с сата хардом или какая то часть ксеона с scsi?

Любой сказик даст фору самому быстрому sata , все таки у сказика свой проц для обработки передаваемых данных., чем и разгружает проц.

Аватар пользователя clubwave.ru clubwave.ru 28 января 2008 в 15:53

а тем временем под проект выделено уже 20% от двух двуядерных ксеонов

на вопрос, не лучше ли приобрести реальный недорогой сервер с селероном на борту ответили следующее:

Целерон будет медленее. Нужно оценивать мощность не только процессоров, а сервера в целом. На сервере используются самые скоростные жесткие диски SAS (а это очень важно для работы сайта и баз данных), быстрая оперативная память, очень мощьные процессора.

а SAS что за зверь такой?

и да, сайт работает очень быстро..

Аватар пользователя Akzhan Akzhan 5 марта 2008 в 0:28

У eAccelerator были серьёзные проблемы с обработкой исключений до недавнего времени, поэтому он не был установлен на .masterhost. Сейчас эти проблемы разрешены.

Значимой разницы между PHP-акселераторами нет.

Для Drupal самым быстрым по тестам получился eAccelerator (он и будет установлен на .masterhost в ближайшие дни). Зато APC будет входить в ядро PHP6 (и мы при необходимости перейдём на него).

Аватар пользователя clubwave.ru clubwave.ru 20 марта 2008 в 23:38

посещаемость выросла до 7500 хостов и 60 залогиненных онлайн.. снова начались тормоза.. эх

такая штука помогла немного :

<IfModule mod_gzip.c>
      mod_gzip_on                   Yes
      mod_gzip_item_include         file       \.js$
      mod_gzip_item_include         file       \.css$
</IfModule>

а может и много, только что поставил, по крайней мере падать перестал

Аватар пользователя Ainur Ainur 3 мая 2008 в 2:07

clubwave.ru wrote:
посещаемость выросла до 7500 хостов и 60 залогиненных онлайн.. снова начались тормоза.. эх$
Речь о clubwave.ru идет?

Аватар пользователя coyotle coyotle 21 марта 2008 в 8:24

clubwave.ru Вы похоже уже собаку съели на оптимизации сервера для друпала... написали бы для сообщества небольшую доку/мануал по этому делу?!

Аватар пользователя clubwave.ru clubwave.ru 3 апреля 2008 в 6:24

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

кстати, eAccelerator оказался в разы быстрей APC.. может быть и показалось, но пока ощущение, что eAccelerator жействительно самый мощный ускоритель друпала.. одно но, при перегрузе апач начинает падать с ошибкой - segmentation fault

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

до середины апреля планирую переехать на dds (http://www.rusonyx.ru/services/dds/) c максимальным тарифом.. 4-ядерный проц , 2 гига оперативки и 120 Гб sas диск.. вселяет надежду..

для текущего сервака всёже 50 онлайн зарегенных - тяжеловато.. пока рекорд был около 70..

Аватар пользователя clubwave.ru clubwave.ru 10 апреля 2008 в 22:25

хых.. друпал.ру при 30 вроде падает..

да была трабла в advanced_forum .. убрал этот модуль.. сегодня 70 залогенных 150 гостей.. подтормаживало.. кстати memcached как то слишком процессор расходует.. без него лучше вобщем

Аватар пользователя Valeratal Valeratal 11 апреля 2008 в 17:13

ну у меня на друпале не все - не весь сайт, друпальная часть примерно 11% (не считая главной) по посещаемости -данные доли посетителей каталога "node" (по данным статистики livinternet)

То есть памяти хватает (админка плеск отключена)

+ на сайте никто не пишет, за очень небольшим исключением
основное общение - на форуме (vbulletin, 500 хостов, находится на том же хостинге )

Тут друпал

а тут уже нет

Аватар пользователя clubwave.ru clubwave.ru 11 апреля 2008 в 17:58

ну меня такой подход не радует. .помоему проще за хостинг доплачивать

а кстати вобла вообще ресурсы не расходует?

плеск у них отключить легко потом? я думаю с ним брать или нет..

а про процессор... эээ, можешь в аську стукнуть? 248268755

Аватар пользователя Valeratal Valeratal 14 апреля 2008 в 12:52

В аську вечером смогу

Вобла - фиг знает, расходует наверно Smile но мерить - особо не мерил
Плеск да, можно отключать - прямо в панели управления - экономия 100-120 метров оперативки Smile

Аватар пользователя Valeratal Valeratal 30 апреля 2008 в 0:29

Shift+Ins
а что такое?
кстати, импортировали мне форум из воблы в друпал - и вот заметил тормоза (для зарегенных) Smile

Аватар пользователя clubwave.ru clubwave.ru 3 мая 2008 в 0:56

http://www.rusonyx.ru/services/dds/3/

+ настройка.. у них очень дорого, поэтому самим придётся.. но чувствую запас мощности ещё большой.. по соотношению цены к производительности конкурентов не обнаружил..

Аватар пользователя Ainur Ainur 4 мая 2008 в 0:59

clubwave.ru wrote:
кстати, у нас 29000 нод и 177000 комментариев.. кто больше? :))
21456 нод, 175767 комментариев, 11418 пользователей. С 2004 года на друпале.

Аватар пользователя Valeratal Valeratal 3 мая 2008 в 23:18

clubwave.ru
Мне поставили е-акселлератор (неслабо они оценивают стоимость одного рабочего дня) Smile , а вот ngnix нет - несовместим с плеском, точнее поставить можно, но если я настройки сайта поменяю через плеск, то все сломается
Поэтому пока апач

Да, перенес (один человек отсюда) мне форум, теперь
Nodes 6689
Коментарии 35050

Аватар пользователя Valeratal Valeratal 8 мая 2008 в 21:35

мне без плеска плохо, я шеллом не владею как родным Smile (зато поставил mc)

за акселлератор - 2600 (это по идее должно было быть и за ngnix)

Аватар пользователя cwer cwer 9 мая 2008 в 20:37

акселератор не надо настраивать почти. поэтому за nginx, наверное больше возьмут.
или установят без настрйоки

Аватар пользователя Valeratal Valeratal 12 мая 2008 в 11:01

Ну денег берут - так как я сам должен все делать - VPS все таки
Думаю, не перейти ли на со второго VPS на третий, больше памяти (ее хватает) и процессора (1000 против 750 мегагерц)

Аватар пользователя Valeratal Valeratal 14 мая 2008 в 0:26

да смысла нет вроде
хотя, конечно, смотря как оценивать быстродействие

P.S. Не уверен, что переезд на VDS также прост как с VPS на VPS (там просто купить, переносить ничего не надо)

Аватар пользователя clubwave.ru clubwave.ru 18 июня 2008 в 17:26

Ainur, для анонимов кэшируется страница целиком.. для неанонимов не вижу смысла кэшировать блоки, ну и модуль не понравился..

сейчас кстати сайт работает на одном апаче + apc.. больше никаких оптимизаций и настроек не делалось после недавнего краха нгинкс...

Аватар пользователя Ainur Ainur 24 июня 2008 в 23:54

clubwave.ru wrote:
Ainur, для анонимов кэшируется страница целиком.. для неанонимов не вижу смысла кэшировать блоки, ну и модуль не понравился..
Для не анонимов очень даже целесообразно. Зачем каждый раз генерировать одно и тоже?

Аватар пользователя Valeratal Valeratal 4 декабря 2008 в 17:58

я на полгода переехал на dds2
(1700 проц, полтора гига оперативки) Smile

p.s. у русоникса есть еще оказывается программа лояльности - за свою ссылку на морде, дают 20% скидки (правда не знаю, наверно хостинг просто продляют)

Аватар пользователя penexe penexe 4 декабря 2008 в 18:23

"Valeratal" wrote:
я на полгода переехал на dds2
(1700 проц, полтора гига оперативки) Smile
p.s. у русоникса есть еще оказывается программа лояльности - за свою ссылку на морде, дают 20% скидки (правда не знаю, наверно хостинг просто продляют)

с таким сайтом можно и свой сервер купить