Z-Style

Z-Style
Рейтинг
185
Регистрация
18.03.2010
myhand:
Плохо, конечно.
Это какой-же дистрибутив такое счастье устраивает?

Ставил не я.

Какой параметр тогда необходимо установить вместо unlimited ?

Z-Style добавил 09.11.2011 в 22:02

LEOnidUKG:
ТС, а не пробовали mysql_pconnect протестировать, вместо mysql_connect

нет не пробовал

myhand:

Типа крута?

Стояло по умолчанию. Плохо?

Z-Style добавил 09.11.2011 в 21:55

myhand:

С временными таблицами, возможно, уже ничего не выйдет. Попробуйте поместить раздел для временных файлов mysql (не весь /tmp !) - на tmpfs.

Далее tmp_table_size уже не увеличивать?

netwind:

81 мб данных это не смешно даже.

Это откуда цифра?

netwind:

и какие ж такие данные об этом свидетельствуют ?

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

Z-Style добавил 09.11.2011 в 21:29

myhand:

Вот и увеличьте эту переменную. При необходимости - еще и лимит на число дескрипторов (как уже разбирали ранее).

Ок. Число дескрипторов установлено unlimited.

Новый уже в любом случае необходим.

Z-Style добавил 09.11.2011 в 21:12

Новый сервер 2х Xeon 2.67, 48Gb

Старые настройки MySQL:

query_cache_size 16M

tmp_table_size 16M

max_heap_table_size 16M

table_cache 256

key_buffer_size 6М

Сайт в принципе работал нормально.

По логам скула не хватает кеша, не хватает индексов.

Рекомендации тюнера:

-------- Performance Metrics -------------------------------------------------

[--] Up for: 19h 1m 33s (30M q [438.654 qps], 620K conn, TX: 159B, RX: 3B)

[--] Reads / Writes: 99% / 1%

[--] Total buffers: 64.0M global + 1.6M per thread (400 max threads)

[OK] Maximum possible memory usage: 710.9M (1% of installed RAM)

[OK] Slow queries: 0% (0/30M)

[OK] Highest usage of available connections: 29% (117/400)

[OK] Key buffer size / total MyISAM indexes: 6.0M/45.1M

[OK] Key buffer hit rate: 98.9% (750M cached / 7M reads)

[OK] Query cache efficiency: 59.2% (16M cached / 27M selects)

[!!] Query cache prunes per day: 6879993

[OK] Sorts requiring temporary tables: 0% (13 temp sorts / 1M sorts)

[!!] Temporary tables created on disk: 49% (441K on disk / 884K total)

[OK] Thread cache hit rate: 97% (14K created / 620K connections)

[!!] Table cache hit rate: 1% (31 open / 3K opened)

[OK] Open file limit used: 2% (42/2K)

[OK] Table locks acquired immediately: 99% (11M immediate / 11M locks)

-------- Recommendations -----------------------------------------------------

General recommendations:

Add skip-innodb to MySQL configuration to disable InnoDB

Run OPTIMIZE TABLE to defragment tables for better performance

MySQL started within last 24 hours - recommendations may be inaccurate

When making adjustments, make tmp_table_size/max_heap_table_size equal

Reduce your SELECT DISTINCT queries without LIMIT clauses

Increase table_cache gradually to avoid file descriptor limits

Variables to adjust:

query_cache_size (> 16M)

tmp_table_size (> 16M)

max_heap_table_size (> 16M)

table_cache (> 256)

Изменил параметры:

query_cache_size 256

tmp_table_size 256

max_heap_table_size 256

table_cache 512

После изменения настроек сайт бывает притормаживает.

Процессор работает на все 100%, идлов 0

Свободной памяти 38Гб (занято 10)

Задержек от дисковой подсистемы нет.

Created_tmp_disk_tables растет по прежднему.

Opened_tables стало еще больше.

Table_locks_waited стало больше.

Рекомендации тюнера теперь:

-------- Performance Metrics -------------------------------------------------

[--] Up for: 1h 14m 12s (4M q [1K qps], 97K conn, TX: 24B, RX: 617M)

[--] Reads / Writes: 99% / 1%

[--] Total buffers: 602.0M global + 1.6M per thread (250 max threads)

[OK] Maximum possible memory usage: 1006.3M (2% of installed RAM)

[OK] Slow queries: 0% (0/4M)

[OK] Highest usage of available connections: 9% (23/250)

[OK] Key buffer size / total MyISAM indexes: 64.0M/45.6M

[OK] Key buffer hit rate: 99.7% (34M cached / 103K reads)

[OK] Query cache efficiency: 76.7% (3M cached / 4M selects)

[OK] Query cache prunes per day: 0

[OK] Sorts requiring temporary tables: 0% (0 temp sorts / 45K sorts)

[!!] Temporary tables created on disk: 49% (10K on disk / 20K total)

[OK] Thread cache hit rate: 94% (5K created / 97K connections)

[!!] Table cache hit rate: 9% (29 open / 299 opened)

[OK] Open file limit used: 3% (41/1K)

[OK] Table locks acquired immediately: 99% (880K immediate / 880K locks)

-------- Recommendations -----------------------------------------------------

General recommendations:

Add skip-innodb to MySQL configuration to disable InnoDB

Run OPTIMIZE TABLE to defragment tables for better performance

MySQL started within last 24 hours - recommendations may be inaccurate

Temporary table size is already large - reduce result set size

Reduce your SELECT DISTINCT queries without LIMIT clauses

Increase table_cache gradually to avoid file descriptor limits

Variables to adjust:

table_cache (> 512)

Что делать пока не знаю.

myhand:
Посмотрел вокруг - больше 20Mb нигде вроде нету, с этой оценкой и считал. 128 - что-то уж больно специфическое. Я что-то проглядел и ТС давал это число?

128 это действительно специфическое. У меня порядка 30мб на 1 коннект.

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

Интересно, а кто что скажет в отношении параметра key_cache_division_limit ?

По умолчанию стоит 100. Стоит ли менять?

И у меня еще возник вопрос: каким параметром в системе выставдяется ограничение на количество дескрипторов, как узнать текущее значение, и как правильно его определить для себя, каким оно может быть максимальным? Только под мускул насчитал необходимость в 1000 дескрипторах (считал максимальное кол-во соединений помноженное на кол-во используемых таблиц для одного соединения)

Andreyka:
Интересно, по каким причинам кеширование в WP не подходит?

Видимо слишком динамичный сайт для кеширования. Как то даже были попробовали: поставили Super Cache - вроде все начиналось хорошо, но скоро увидели в браузере вместо внутренней страницы - главную. Больше решили не рисковать. Хотя сама по себе идея кеширования - это хорошая идея.

myhand:
Ну, Вы вот писали что число процессов апача доходит до 250. Вот это и есть момент пиковой нагрузки. Слабо верится, что в это время сервер у Вас "шевелится" достаточно шустро и вполне доступен для пользователей.

Тот сервер начинал задыхаться. На этом больше 170 пока не увидел.

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

myhand:
Но и выше 40-50 обычно ставить не имеет смысла. А 50*20Mb - вполне скромно даже для слабенького сервера.

Сейчас на сервере 48Gb. Используется в данный момент 41Gb

myhand:
Их много, когда нагрузка скачет. Значит что-то не так...

Нагрузка скачет если смотреть в рамках 24-х часов. На протяжении таких интервалов как 1 час - нагрузка равномерная.

myhand:
Почитайте про Max/MinSpareServers

В процессе))

Всего: 1902