Нужна проф помощь с оптимизацией

12
It-mcp.ru
На сайте с 06.04.2010
Offline
76
#11

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

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

Отзывы searchengines.ru (/ru/forum/500625), maultalk.ru (http://www.maultalk.com/topic59939.html)
LF
На сайте с 13.08.2015
Offline
65
#12
sstyle:

Кэш и прочее включено. Пока сайт создавался - работал быстро. Когда зашли 20 сотрудников одновременно - более-менее. Когда выложили в паблике, умер совсем. "WAIT" более 30 секунд от сервера.

Для начала стоит проверить, что конфигурация вашего сервера проходит тест соответствия встроенный в битрикс и количество попугаев равно хотя бы 30.

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

То что вы полезли настраивать базу это, конечно, хорошо, но крутить настройки не понимая для чего они и на что они могут повлиять я бы не стал. Настройки MySQL могут сильно влиять на расход используемой памяти и, скорее всего, в вашем случае уже никак не повлияют на производительность. Размер вашей innodb базы всего 43MB.

А вот разобраться, почему у вас происходят такие запросы стоит в первую очередь: "[!!] Joins performed without indexes: 44151"

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

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

Выбор битрикса - достаточно опрометчивое решение. Он медленный и изменить это весьма трудно.

На мой взгляд, проблема Битрикса не в самой системе CMS или в сложности настройки ОС, а в достаточно низком техническом уровне программистов "под Битрикс". К такой ситуации, конечно, привел маркетинг, который проводит компания разработчик - широкая партнерская сеть веб студий и позиционирование в качестве коробочного решения "для всего".

Настройка ОС не так уж сложна. К тому же производитель любит своих программистов-партнеров и разработал для них готовый образ/скрипт для разворачивания своего полностью настроенного окружения под ключ.

S
На сайте с 26.10.2005
Offline
100
#13
totamon:
да все может жрать) почему вы только на mysql внимание обратили? проверьте нагрузку командой top, сколько одновременно включенных процессов, будет видно какие и сколько занимают памяти и процессора. сколько у вас в пике посетителей одновременно заходит?

прикладываю top

# top -bn1
top - 10:39:01 up 21:55, 2 users, load average: 13.93, 13.59, 20.42
Tasks: 135 total, 20 running, 115 sleeping, 0 stopped, 0 zombie
Cpu(s): 27.7%us, 13.8%sy, 0.0%ni, 58.5%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 2097152k total, 1277452k used, 819700k free, 0k buffers
Swap: 0k total, 0k used, 0k free, 502732k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
21842 usr 20 0 1084m 23m 15m R 8.4 1.2 0:00.06 httpd.itk
21837 usr 20 0 1090m 29m 14m R 6.7 1.4 0:00.05 httpd.itk
21840 usr 20 0 1084m 22m 14m R 6.7 1.1 0:00.05 httpd.itk
21841 usr 20 0 1090m 29m 14m R 5.0 1.4 0:00.04 httpd.itk
21847 usr 20 0 1088m 24m 10m R 5.0 1.2 0:00.03 httpd.itk
21848 usr 20 0 1088m 23m 10m R 5.0 1.2 0:00.03 httpd.itk
21839 usr 20 0 1090m 28m 14m R 3.4 1.4 0:00.04 httpd.itk
21845 usr 20 0 1086m 20m 9576 S 3.4 1.0 0:00.02 httpd.itk
21849 usr 20 0 1086m 20m 9576 S 3.4 1.0 0:00.02 httpd.itk
21851 usr 20 0 1086m 20m 9576 S 3.4 1.0 0:00.02 httpd.itk
21853 usr 20 0 1086m 20m 9576 S 3.4 1.0 0:00.02 httpd.itk
8254 apache 20 0 317m 9224 860 S 1.7 0.4 1:51.66 nginx
19215 root 20 0 1083m 8556 516 S 1.7 0.4 0:00.10 httpd.itk
19398 root 20 0 1083m 8556 516 S 1.7 0.4 0:00.09 httpd.itk
19474 root 20 0 1083m 8556 516 S 1.7 0.4 0:00.08 httpd.itk
21816 usr 20 0 1088m 24m 10m R 1.7 1.2 0:00.02 httpd.itk
21823 usr 20 0 1088m 23m 10m R 1.7 1.2 0:00.02 httpd.itk
21836 usr 20 0 1088m 24m 10m R 1.7 1.2 0:00.02 httpd.itk
21844 usr 20 0 1086m 20m 9580 S 1.7 1.0 0:00.01 httpd.itk
21850 usr 20 0 1086m 20m 9576 S 1.7 1.0 0:00.01 httpd.itk
21852 usr 20 0 1086m 20m 9576 S 1.7 1.0 0:00.01 httpd.itk
21856 usr 20 0 1086m 20m 9580 S 1.7 1.0 0:00.01 httpd.itk
21858 usr 20 0 248m 9768 6908 R 1.7 0.5 0:00.01 php
21860 usr 20 0 1085m 18m 7996 R 1.7 0.9 0:00.01 httpd.itk
21861 usr 20 0 1085m 18m 7996 R 1.7 0.9 0:00.01 httpd.itk
21863 root 20 0 91644 4592 3728 S 1.7 0.2 0:00.01 mgrctl
21864 usr 20 0 1085m 17m 7412 R 1.7 0.8 0:00.01 httpd.itk
25886 mysql 20 0 1941m 325m 4176 S 1.7 15.9 11:20.54 mysqld
1 root 20 0 19212 384 168 S 0.0 0.0 0:00.24 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd/160230
3 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper/1602309
4 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
5 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
6 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
7 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
14 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
16 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
18 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
19 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
20 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
21 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
22 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
23 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
24 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
25 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
26 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
27 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rpciod/16023094
28 root 20 0 0 0 0 S 0.0 0.0 0:00.00 nfsiod/16023094
156 root 16 -4 10536 248 4 S 0.0 0.0 0:00.00 udevd
513 root 20 0 178m 840 424 S 0.0 0.0 0:02.62 rsyslogd
527 named 20 0 234m 14m 1724 S 0.0 0.7 0:00.57 named
599 root 20 0 94128 2204 1092 S 0.0 0.1 0:00.69 ihttpd
600 root 20 0 66092 828 140 S 0.0 0.0 0:01.70 sshd
607 root 20 0 21712 232 8 S 0.0 0.0 0:00.00 xinetd
720 root 20 0 95672 1700 844 S 0.0 0.1 0:00.00 sshd
735 usr 20 0 95672 1612 680 S 0.0 0.1 0:00.12 sshd
736 usr 20 0 57536 1552 652 S 0.0 0.1 0:00.05 sftp-server
1362 root 20 0 19264 460 208 S 0.0 0.0 0:00.14 dovecot
1363 dovecot 20 0 12988 472 256 S 0.0 0.0 0:00.05 anvil
1365 root 20 0 13116 548 240 S 0.0 0.0 0:00.01 log
1374 root 20 0 50188 528 4 S 0.0 0.0 0:00.00 saslauthd
1376 root 20 0 50188 524 0 S 0.0 0.0 0:00.00 saslauthd
1387 exim 20 0 74556 996 224 S 0.0 0.0 0:00.21 exim
1396 nobody 20 0 146m 1432 196 S 0.0 0.1 0:00.94 proftpd
1403 root 20 0 1083m 18m 10m S 0.0 0.9 0:09.80 httpd.itk
1428 root 20 0 114m 944 304 S 0.0 0.0 0:01.09 crond
1438 root 20 0 21052 184 16 S 0.0 0.0 0:00.00 atd
1446 root 20 0 4068 88 8 S 0.0 0.0 0:00.00 mingetty
1447 root 20 0 4068 88 8 S 0.0 0.0 0:00.00 mingetty
3622 root 20 0 1083m 8556 516 S 0.0 0.4 0:01.75 httpd.itk
5914 root 20 0 985m 18m 3388 S 0.0 0.9 0:20.35 core
8252 root 20 0 310m 1844 24 S 0.0 0.1 0:00.00 nginx
8255 apache 20 0 317m 9384 912 S 0.0 0.4 1:59.61 nginx
10474 root 20 0 39616 540 8 S 0.0 0.0 0:00.00 ssl-params
12813 root 20 0 440m 6708 2696 S 0.0 0.3 0:11.01 core
13579 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.42 httpd.itk
13960 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.39 httpd.itk
14049 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.39 httpd.itk
14052 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.38 httpd.itk
17182 root 20 0 98204 1316 356 S 0.0 0.1 0:00.47 sshd
17209 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.21 httpd.itk
17271 root 20 0 105m 904 528 S 0.0 0.0 0:00.02 bash
17574 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.21 httpd.itk
17848 root 20 0 98204 1388 428 S 0.0 0.1 0:00.48 sshd
S
На сайте с 26.10.2005
Offline
100
#14

и еще чуток не влезло:

17852 root 20 0 105m 564 172 S 0.0 0.0 0:00.03 bash
17997 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.17 httpd.itk
18376 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.14 httpd.itk
18405 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.14 httpd.itk
18406 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.13 httpd.itk
18489 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.14 httpd.itk
18786 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.13 httpd.itk
19146 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.09 httpd.itk
19434 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.08 httpd.itk
19472 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.08 httpd.itk
19475 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.08 httpd.itk
19520 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.08 httpd.itk
19521 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.07 httpd.itk
19524 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.08 httpd.itk
19527 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.07 httpd.itk
20289 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.05 httpd.itk
21138 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.02 httpd.itk
21181 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.02 httpd.itk
21182 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.02 httpd.itk
21183 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.02 httpd.itk
21184 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.02 httpd.itk
21519 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.00 httpd.itk
21569 root 20 0 96988 4156 3232 S 0.0 0.2 0:00.03 sshd
21574 sshd 20 0 67436 1672 904 S 0.0 0.1 0:00.00 sshd
21601 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.01 httpd.itk
21822 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.00 httpd.itk
21824 usr 20 0 1086m 20m 9576 S 0.0 1.0 0:00.01 httpd.itk
21835 usr 20 0 1086m 20m 9576 S 0.0 1.0 0:00.01 httpd.itk
21838 usr 20 0 1086m 20m 9580 S 0.0 1.0 0:00.01 httpd.itk
21843 usr 20 0 1086m 20m 9576 S 0.0 1.0 0:00.01 httpd.itk
21846 root 20 0 15028 1172 872 R 0.0 0.1 0:00.00 top
21854 root 20 0 132m 1688 984 S 0.0 0.1 0:00.00 crond
21855 root 20 0 132m 1688 984 S 0.0 0.1 0:00.00 crond
21857 root 20 0 9200 1180 1012 S 0.0 0.1 0:00.00 sh
21859 root 20 0 9200 1256 1088 S 0.0 0.1 0:00.00 cron-ispmgr
21862 root 20 0 9200 644 468 S 0.0 0.0 0:00.00 cron-ispmgr
21865 usr 20 0 1085m 16m 6924 R 0.0 0.8 0:00.00 httpd.itk
21866 usr 20 0 1083m 12m 3920 R 0.0 0.6 0:00.00 httpd.itk
21867 usr 20 0 1083m 11m 3300 R 0.0 0.6 0:00.00 httpd.itk
21868 root 20 0 1083m 8040 0 R 0.0 0.4 0:00.00 httpd.itk
21869 root 20 0 1083m 8040 0 R 0.0 0.4 0:00.00 httpd.itk
26258 root 20 0 105m 640 332 S 0.0 0.0 0:00.07 mysqld_safe
32560 usr 20 0 151m 2068 788 S 0.0 0.1 0:00.11 proftpd



---------- Добавлено 03.12.2015 в 11:18 ----------

vanjouke:
В каком режиме работает php? Оптимальнее было бы nginx+php-fpm. Можно включить кеширование на уровне nginx, а по факту - меняйте cms :)

nginx стоит, php работает как модуль апача. cms увы не вариант ( долбанная синхронизация

---------- Добавлено 03.12.2015 в 11:18 ----------

It-mcp.ru:
Судя по настройкам, у вас связка апача без нгинкса и большие лимиты на остальные квоты баз данных.

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

nginx стоит. Пытался взять у таких сервер. Как правило и они ни в зуб ногой по его нормальной настройке

---------- Добавлено 03.12.2015 в 11:21 ----------

lsw_fan:
Для начала стоит проверить, что конфигурация вашего сервера проходит тест соответствия встроенный в битрикс и количество попугаев равно хотя бы 30.

без нагрузки 30 есть

lsw_fan:
Дальше, посмотреть время генерации страниц на вашем сайте без нагрузки. В битриксе есть встроенный отладчик, можно посмотреть кол-во запросов, время выполнения, сколько времени работал PHP, использовался кеш или нет.

bitrix:catalog.section: 15.3363 с; Запросов: 1293 (2.1929 с)

bitrix:catalog: 16.4235 с

Время создания страницы: 23.7909 сек.

Всего SQL запросов: 1534

Время исполнения запросов: 2.7024 сек.

После кеша:

bitrix:catalog.section: 8.9421 с; Запросов: 1293 (1.3564 с); кеш: 1 МБ

bitrix:catalog: 9.4304 с; кеш: 412 Б

Это очень странно. Кэширующий код расположен в шаблоне catalog.section, то есть он не должен перебирать элементы

включил кэширование компонента каталога, стало так:

bitrix:catalog.section: 0.0079 с; Запросов: 1 (0.0001 с); кеш: 994 КБ

bitrix:catalog: 0.0386 с; кеш: 412 Б

Но при первой загрузке каталога товаров нет, а время выполнения около 2 секунд. Обновляешь страницу и она уже грузит товары и быстро.

lsw_fan:
То что вы полезли настраивать базу это, конечно, хорошо, но крутить настройки не понимая для чего они и на что они могут повлиять я бы не стал. Настройки MySQL могут сильно влиять на расход используемой памяти и, скорее всего, в вашем случае уже никак не повлияют на производительность. Размер вашей innodb базы всего 43MB.

А вот разобраться, почему у вас происходят такие запросы стоит в первую очередь: "[!!] Joins performed without indexes: 44151"

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

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

надо и то и другое видимо. Хотя я полагаю дело в кэшировании страниц и mysql запросов

lsw_fan:

На мой взгляд, проблема Битрикса не в самой системе CMS или в сложности настройки ОС, а в достаточно низком техническом уровне программистов "под Битрикс". К такой ситуации, конечно, привел маркетинг, который проводит компания разработчик - широкая партнерская сеть веб студий и позиционирование в качестве коробочного решения "для всего".

100%

lsw_fan:

Настройка ОС не так уж сложна. К тому же производитель любит своих программистов-партнеров и разработал для них готовый образ/скрипт для разворачивания своего полностью настроенного окружения под ключ.

ОС да. а с сервером не очень.

LF
На сайте с 13.08.2015
Offline
65
#15
sstyle:

17997 root 20 0 1083m 8556 516 S 0.0 0.4 0:00.17 httpd.itk

Я бы рекомендовал отказаться от использования httpd.itk для работы с Bitrix.

Вы получаете достаточно серьезное снижение производительности в виду особенностей работы данного worker.

Рекомендую перевести обработку PHP на mod_fcgid или php-fpm.

sstyle:

bitrix:catalog.section: 15.3363 с; Запросов: 1293 (2.1929 с)
bitrix:catalog: 16.4235 с

Время создания страницы: 23.7909 сек.
Всего SQL запросов: 1534
Время исполнения запросов: 2.7024 сек.

Это абсолютно не нормально. 1300 запросов и почти 24 секунды генерации страницы это очень много.

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

sstyle:

а с сервером не очень.

Уточните, что вы имеете в виду?

У битрикса есть скрипт, который на голый сервер с CentOS 6 разворачивает готовую настройку, которая удовлетворяет требованиям CMS.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий