Задавайте вопросы, мы ответим
Вы не зашли.
Периодически в mysql лавинообразно появляется более 100 тредов. Проходит либо само, когда треды начинают отваливаться по таймауту, либо приходится мочить несколько из них. Происходит это обычно в часы повышенной нагрузки, около 12 часов дня. Однако любой запрос, который выполняется в момент "затыка" по 20 секунд обычно выполняется от 0,2 до 5 секунд. По логам апача нагрузка в эти моменты не намного отличается от среднестатистической.
Пробовали различные конфиги Mysql в плане кешей и количества тредов, отрубали mysql.allow_persistent в php, не помогает. Mysql 5.1, Серверы разные, FreeBSD, Suse, в среднем по 100-200 тыс посетителей в день на сервер, памяти от 8 до 24 гиг. Базы разные, пользователи тоже. В моменты затыков примерно по 5-10 разных пользователей в базе (т.е. сайтов), каждый лезет к 1 или 2 своим базам.
Во вложении картинки из Навиката и Нагиоса.
Отредактированно vova-c (30.09.2011 17:17:49)
Неактивен
Добавлю еще в текстовом виде аналогичный затык на втором сервере. Как видно, активных только 3 треда (один в верху и два внизу, большинство sleep. Может ли проблема быть в persistent connect в PHP?
SERVER PID DB_USER USER_IP DB STATUS TIMEOUT INFO
server2 3195808 user_1 localhost dbprice_user_1 Query 732 Copying to tmp table INSERT INTO __search_results (`article`, [вырезано]
server2 3195874 user_1 localhost db_user_1 Sleep 766
server2 3195922 user_1 localhost db_user_1 Sleep 754
server2 3195998 user_1 localhost db_user_1 Sleep 742
server2 3196069 user_1 localhost db_user_1 Sleep 730
server2 3196137 user_1 localhost db_user_1 Sleep 718
server2 3196218 user_1 localhost db_user_1 Sleep 706
server2 3196269 user_1 localhost db_user_1 Sleep 694
server2 3196350 user_1 localhost db_user_1 Sleep 682
server2 3196425 user_1 localhost db_user_1 Sleep 669
server2 3196513 user_1 localhost db_user_1 Sleep 657
server2 3196601 user_1 localhost db_user_1 Sleep 645
server2 3196670 user_1 localhost db_user_1 Sleep 633
server2 3196743 user_1 localhost db_user_1 Sleep 621
server2 3196806 user_1 localhost db_user_1 Sleep 609
server2 3196871 user_1 localhost db_user_1 Sleep 597
server2 3196936 user_1 localhost db_user_1 Sleep 585
server2 3196997 user_1 localhost db_user_1 Sleep 573
server2 3197073 user_1 localhost db_user_1 Sleep 561
server2 3197162 user_1 localhost db_user_1 Sleep 549
server2 3197237 user_1 localhost db_user_1 Sleep 536
server2 3197313 user_1 localhost db_user_1 Sleep 524
server2 3197394 user_1 localhost db_user_1 Sleep 512
server2 3197481 user_1 localhost db_user_1 Sleep 500
server2 3197565 user_1 localhost db_user_1 Sleep 488
server2 3197646 user_1 localhost db_user_1 Sleep 476
server2 3197725 user_1 localhost db_user_1 Sleep 464
server2 3197784 user_1 localhost db_user_1 Sleep 452
server2 3197848 user_1 localhost db_user_1 Sleep 440
server2 3197927 user_1 localhost db_user_1 Sleep 428
server2 3197988 user_1 localhost db_user_1 Sleep 416
server2 3198069 user_1 localhost db_user_1 Sleep 403
server2 3198130 user_1 localhost db_user_1 Sleep 391
server2 3198192 user_1 localhost db_user_1 Sleep 379
server2 3198265 user_1 localhost db_user_1 Sleep 367
server2 3198353 user_1 localhost db_user_1 Sleep 355
server2 3198442 user_1 localhost db_user_1 Sleep 343
server2 3198519 user_1 localhost db_user_1 Sleep 331
server2 3198598 user_1 localhost db_user_1 Sleep 319
server2 3198695 user_1 localhost db_user_1 Sleep 307
server2 3198768 user_1 localhost db_user_1 Sleep 295
server2 3198850 user_1 localhost db_user_1 Sleep 283
server2 3198921 user_1 localhost db_user_1 Sleep 271
server2 3198994 user_1 localhost db_user_1 Sleep 258
server2 3199075 user_1 localhost db_user_1 Sleep 246
server2 3199143 user_1 localhost db_user_1 Sleep 234
server2 3199225 user_1 localhost db_user_1 Sleep 222
server2 3199312 user_1 localhost db_user_1 Sleep 210
server2 3199388 user_1 localhost db_user_1 Sleep 198
server2 3199468 user_1 localhost db_user_1 Sleep 186
server2 3199557 user_1 localhost db_user_1 Sleep 174
server2 3199635 user_1 localhost db_user_1 Sleep 162
server2 3199721 user_1 localhost db_user_1 Sleep 150
server2 3199793 user_1 localhost db_user_1 Sleep 138
server2 3199854 user_1 localhost db_user_1 Sleep 125
server2 3199931 user_1 localhost db_user_1 Sleep 113
server2 3199999 user_1 localhost db_user_1 Sleep 101
server2 3200092 user_1 localhost db_user_1 Sleep 89
server2 3200168 user_1 localhost db_user_1 Sleep 77
server2 3200219 user_1 localhost db_user_1 Sleep 65
server2 3200282 user_1 localhost db_user_1 Sleep 53
server2 3200360 user_1 localhost db_user_1 Sleep 41
server2 3200461 user_1 localhost db_user_1 Sleep 29
server2 3200536 user_1 localhost db_user_1 Sleep 17
server2 3200600 user_1 localhost db_user_1 Sleep 5
server2 2905992 DELAYED localhost db_tsi Delayed insert 17 Waiting for INSERT
server2 2939481 DELAYED localhost db_avs Delayed insert 17 Waiting for INSERT
server2 2941450 DELAYED localhost db_isu Delayed insert 11 Waiting for INSERT
server2 3041918 DELAYED localhost db_rea Delayed insert 91 Waiting for INSERT
server2 3068100 DELAYED localhost db_29a Delayed insert 8 Waiting for INSERT
server2 3126883 DELAYED localhost db_gra Delayed insert 208 Waiting for INSERT
server2 3144487 DELAYED localhost db_car Delayed insert 1 Waiting for INSERT
server2 3175506 DELAYED localhost db_eki Delayed insert 86 Waiting for INSERT
server2 3183367 DELAYED localhost db_rrp Delayed insert 1 Waiting for INSERT
server2 3186266 DELAYED localhost db_sda Delayed insert 0 Waiting for INSERT
server2 3193576 DELAYED localhost db_al4 Delayed insert 45 Waiting for INSERT
server2 3195010 DELAYED localhost db_bol Delayed insert 3 Waiting for INSERT
server2 3195120 DELAYED localhost db_ino Delayed insert 2 Waiting for INSERT
server2 3195641 DELAYED localhost db_kub Delayed insert 3 Waiting for INSERT
server2 3195722 DELAYED localhost db_avt Delayed insert 0 Waiting for INSERT
server2 3195826 DELAYED localhost db_int Delayed insert 40 Waiting for INSERT
server2 3196245 DELAYED localhost db_mad Delayed insert 23 Waiting for INSERT
server2 3199118 DELAYED localhost db_au1 Delayed insert 31 Waiting for INSERT
server2 3200027 DELAYED localhost db_au2 Delayed insert 10 Waiting for INSERT
server2 3200205 DELAYED localhost db_vag Delayed insert 9 Waiting for INSERT
server2 3200618 pref_db_avt localhost db_avt Query 0 Sorting result SELECT [вырезано]
server2 3200621 pref_db_rrp localhost db_rrp Sleep 1
server2 3200622 pref_db_rrp localhost tec Query 0 Sending data SELECT * FROM ( [вырезано]
server2 3200631 pref_db_sda localhost db_sda Sleep 0
server2 3191189 www_f37A7T6R 188.123.X.X:2832 dbprice_loc Sleep 21
server2 3167741 www_Kb0vyVc0 81.200.X.X:25594 dbprice_fro Sleep 0
server2 3184254 www_Vt9T903z 85.117.X.X:64639 dbprice_loc Sleep 0
Неактивен
У меня это тоже было. Честно говоря, причину слипов я у себя тоже не нашёл ... :-(
Часто на это влияет отсутствие mysql_close()
В общем это не решается но залечивается с помощью уменьшением wait_timeout в конфиге mysql.
Будьте осторожны, это может убивать ваши долго работающие запросы. На этот случай перед ними можно изменять эту переменную на лету.
Отредактированно evgeny (15.10.2011 14:54:57)
Неактивен