1

Тема: Довга відповідь сервера

Привіт всім

В мене наступна проблема: є два розважальні сайти на DLE, попсової тематики, обидва знаходяться на одному сервері, де майже все анліміт

[img]http://cdn.домен агресора/uploads/prod/2014/08/19/838/2e5/78d24cf8f26d1176968b7e9c1aea4a988d7d671e.png[/img]

Один сайт працює нормально, швидкість по GooglePageSpeed більш-менш нормальна. По іншому ж сайту пише, що затримка сервера 1.9 секунди
http://s12.postimg.org/tybu7n2il/Page_Speed.png

Дивлюся по ssh навантаження обох сайтів - дуже багато їсть mysql
http://s27.postimg.org/o53afy16r/atop_sort.png


Власне, питання: як так може статися, що в одного з сайтів довгий відгук сервера, якщо всі параметри аналогічні?

2

Re: Довга відповідь сервера

База даних має різну структуру або запити витягуються по різному. всяке може бути
як варіант зробіть профайлінг запитів до бази даних і подивіться які саме туплять)

3

Re: Довга відповідь сервера

Спробую профайлінг, спасибі

4

Re: Довга відповідь сервера

Профайлер нічого особливого не показав:

mysql> select count(*) from dle_comments;
+----------+
| count(*) |
+----------+
|        0 |
+----------+
1 row in set (0.00 sec)

mysql> select count(*) from dle_views;
+----------+
| count(*) |
+----------+
|    20411 |
+----------+
1 row in set (0.00 sec)

mysql> show profiles;
+----------+------------+-----------------------------------+
| Query_ID | Duration   | Query                             |
+----------+------------+-----------------------------------+
|        1 | 0.00025675 | select count(*) from dle_comments |
|        2 | 0.00025075 | select count(*) from dle_views    |
+----------+------------+-----------------------------------+
2 rows in set (0.00 sec)

mysql> show profile for query 1;
+--------------------------------+----------+
| Status                         | Duration |
+--------------------------------+----------+
| starting                       | 0.000031 |
| Waiting for query cache lock   | 0.000006 |
| checking query cache for query | 0.000035 |
| checking permissions           | 0.000009 |
| Opening tables                 | 0.000018 |
| System lock                    | 0.000010 |
| Waiting for query cache lock   | 0.000023 |
| init                           | 0.000012 |
| optimizing                     | 0.000007 |
| executing                      | 0.000009 |
| end                            | 0.000005 |
| query end                      | 0.000005 |
| closing tables                 | 0.000010 |
| freeing items                  | 0.000007 |
| Waiting for query cache lock   | 0.000005 |
| freeing items                  | 0.000046 |
| Waiting for query cache lock   | 0.000004 |
| freeing items                  | 0.000004 |
| storing result in query cache  | 0.000006 |
| logging slow query             | 0.000004 |
| cleaning up                    | 0.000006 |
+--------------------------------+----------+
21 rows in set (0.00 sec)

5

Re: Довга відповідь сервера

Як варіант, виконайте команду:

show full processlist

Вона видасть вам список всіх процесів бази. Можливо якісь запити висять довго і тому багато пам'яті йде на базу.

Власне, питання: як так може статися, що в одного з сайтів довгий відгук сервера, якщо всі параметри аналогічні?

Думаю проблема не апаратна і не в конфігурації сервера(ів), а десь в коді.

6

Re: Довга відповідь сервера

Тоді напишу інакше: хто хоче взятися за виправлення проблеми? Потрібно прибрати довгий відгук сервера. Ціна ваша. Оплата на картку Приват

7

Re: Довга відповідь сервера

В пітоносвіті є така штука.
https://camo.githubusercontent.com/2fe57d024f8175767865ac2a1eb94db1d62343a5/68747470733a2f2f7261772e6769746875622e636f6d2f646a616e676f2d64656275672d746f6f6c6261722f646a616e676f2d64656275672d746f6f6c6261722f6d61737465722f6578616d706c652f646a616e676f2d64656275672d746f6f6c6261722e706e67
Дуже зручно я вам скажу

8

Re: Довга відповідь сервера

SET GLOBAL query_cache_size = 52428800;
SET GLOBAL slow_query_log = 'ON'; 
FLUSH LOGS;
set global slow_query_log_file = '/tmp/slow_logs.txt';

А потім 
mysqldumpslow /tmp/slow_logs.txt

Хочу думаю в тебе там просто замість джойну якась херота.