LINUX.ORG.RU

bitrix производительность

 , ,


0

3

есть centos 7
Процессор
Intel Xeon E3-1230 3.2 ГГц
Память
16 ГБ DDR3
Диск
4 × 1000 ГБ SATA
nginx+apache+mpm_prefork (был бы php-fpm, если бы на нем получилось завести push and pull)

при проверке производительности получаю

из-за Среднее время отклика, падает значение Процессор (CPU)

конфиг mysql

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
tmpdir=/var/lib/mysql/tmp
security risks
symbolic-links=0

innodb_buffer_pool_size = 6GB
innodb_log_buffer_size = 64M
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
innodb_file_per_table
innodb_log_file_size = 512M
innodb_buffer_pool_instances = 8

thread_cache_size = 200
table_open_cache = 8192

tmp_table_size=512M
max_heap_table_size=128M
skip-name-resolve=1

slow_query_log_file = /var/log/mysql/slow-query.log
slow_query_log = On
long_query_time = 1

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

как мне повысить Среднее время отклика ?


из-за Среднее время отклика, падает значение Процессор (CPU)

Это с чего вы взяли такую ерунду?

как мне повысить Среднее время отклика ?

SSD+нормальный провайдер

Suntechnic ★★★★★ ()

Эа битрикс страница ни о чем не говорит. Советую попробовать переместить кеш битрикса и сессии php в мемкеш, это может дать сильный прирост. Также, посмотреть в сторону opcache.

anonymous ()
Ответ на: комментарий от anonymous

Эа битрикс страница ни о чем не говорит.

Есть какие-то плюшки которые выдают партнерам если эта страница на их хостинге соответствует эталону.

Советую попробовать переместить кеш битрикса ... в мемкеш

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

Советую попробовать переместить ... сессии php в мемкеш

PHP сессия у ТС и так быстро стартует

Suntechnic ★★★★★ ()
Последнее исправление: Suntechnic (всего исправлений: 1)
Ответ на: комментарий от Suntechnic

на бою такая же проблема Процессор
2 × Intel Xeon E5-2630v3 2.4 ГГц
Память
128 ГБ DDR4
Диск
2 × 480 ГБ SSD

скрин теста

хостинг селектел, не думаю что в нем проблема

Garcia ()
Последнее исправление: Garcia (всего исправлений: 1)
Ответ на: комментарий от Garcia

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

Вся остальная инфа - справочная. Так по тестам у тебя на бою не хватает CPU, а на тесте БД подтупливает. Но основная причина может быть и не в этом.

А зачем тебе эти попугаи? Дело в том что на реальную производительность сайта они влияют весьма опосредовано. Т.е. тебе попугаи ради попугаев или есть какая-то рабочая проблема?

Suntechnic ★★★★★ ()
Ответ на: комментарий от Suntechnic

как-то странно, что на бою

lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                32
On-line CPU(s) list:   0-31
Thread(s) per core:    2
Core(s) per socket:    8
Socket(s):             2
NUMA node(s):          2
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 63
Model name:            Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz
Stepping:              2
CPU MHz:               1200.000
CPU max MHz:           3200.0000
CPU min MHz:           1200.0000
BogoMIPS:              4800.17
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              20480K
NUMA node0 CPU(s):     0-7,16-23
NUMA node1 CPU(s):     8-15,24-31
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb intel_ppin ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm xsaveopt cqm_llc cqm_occup_llc dtherm ida arat pln pts spec_ctrl intel_stibp flush_l1d

CPU(s): 32
и ему не хватает 32 цпу?

бд на тесте подтупливает из-за того что диск не ssd, ну бд пока терпит, меня интересует, почему среднее время отклика такая низкая, хотя железо хорошее

клиенту хочется что бы попугаев было побольше :)

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

Garcia ()
Последнее исправление: Garcia (всего исправлений: 1)
Ответ на: комментарий от Garcia

вот сравнение двух цпу цпу1 цпу2

цпу1

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                12
On-line CPU(s) list:   0-11
Thread(s) per core:    2
Core(s) per socket:    6
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 63
Model name:            Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz
Stepping:              2
CPU MHz:               1274.902
CPU max MHz:           3800.0000
CPU min MHz:           1200.0000
BogoMIPS:              6999.32
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              15360K
NUMA node0 CPU(s):     0-11
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer xsave avx f16c rdrand lahf_lm abm epb intel_ppin ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm xsaveopt cqm_llc cqm_occup_llc dtherm ida arat pln pts md_clear spec_ctrl intel_stibp flush_l1d

цпу2

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                8
On-line CPU(s) list:   0-7
Thread(s) per core:    2
Core(s) per socket:    4
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 58
Model name:            Intel(R) Xeon(R) CPU E3-1230 V2 @ 3.30GHz
Stepping:              9
CPU MHz:               1599.444
CPU max MHz:           3700.0000
CPU min MHz:           1600.0000
BogoMIPS:              6600.00
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              8192K
NUMA node0 CPU(s):     0-7
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm epb ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm ida arat pln pts md_clear spec_ctrl intel_stibp flush_l1d

почему такая большая разница в 10 раз?

Garcia ()
Ответ на: комментарий от Garcia

и ему не хватает 32 цпу?

Ему одного «не хватает». Он же в однопотоке. Просто он показывает что количество операций цпу меньше чем на серевере на котороме получены эталонные значения и всё.

бд на тесте подтупливает из-за того что диск не ssd, ну бд пока терпит, меня интересует, почему среднее время отклика такая низкая, хотя железо хорошее

Да хрен его знает. Оно грузит ядро с init.php например. Может там sleep(1);?

Ну то-есть железо это еще далеко не все что влияет на скорость запуска ядра. Банально файлы php считываются с диска долго?

клиенту хочется что бы попугаев было побольше :)

Пусть купить другой хостинг где их будет побольше.

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

Похоже в клиенте. Ну можете голый битрикс рядом поставить чтобы понять что проблема не в модификациях. В целом подобное железо с головой покрывает все практические нужды как правило.

Suntechnic ★★★★★ ()
Ответ на: комментарий от Garcia

ЕМНИП время отклика в этой пузомерке считается по времени выполнения одного запроса, соответственно участвует одно ядро и оно не успевает «разогнаться» из режима энергосбережения (точнее даже не пытается, т. к. смысла нет) и работает на 1200 MHz. Отключение энергосбережения процессора должно поднять циферки в пару-тройку раз.

NeOlip ()
Ответ на: комментарий от Twissel

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

bdfy ★★★★ ()
Ответ на: комментарий от deep-purple

Ни одного. Он наоборот становится медленным как только они суют туда свои грязные руки.

Конечно его не сделать таким же быстрым как прегенирированные html. А то часто слышишь - вот наша CMS быстрее... а там есть регистрация пользователей, группы, управление правами пользователей? Нет, но зато быстрее, а это все можно сделать. Правда когда сделаешь оно ворочается еще медленнее потому что тяп-ляп и в продакшен. Но зато пустая страничка быстрее отдается.

Suntechnic ★★★★★ ()
Ответ на: комментарий от Suntechnic

тяп-ляп и в продакшен

ты в код ядра битрикса заглядывал? :D

нужно очень постараться, чтобы проиграть двухядерному(!) обфусцированному куску того самого

Ford_Focus ★★★★★ ()
Ответ на: комментарий от Suntechnic

Эльдорадо

у которого TTFB ~секунда с провалами до 3-4 секунд на некоторых категориях.

На всякий случай напомню, что google рекомендует «reduce your server response time under 200ms»

Ford_Focus ★★★★★ ()

Это ничего не даст для уменьшения тормозов.

Вот есть Bitrix CRM, всего полторы сотни контрагентов, никаких сайтов и пр. Машинка попроще чем у тебя (IBM x3550 8 ядер 2xX5450@3.00GHz HDD RAM8Gb)

Конфигурация 	20.78	30 	 
Среднее время отклика 	0.0481 	0.0330 	секунд
Процессор (CPU) 	141.8 	9.0 	миллионов операций в секунду
Файловая система 	11 231.2 	10 000 	файловых операций в секунду
Почтовая система 	0.2046 	0.0100 	время отправки одного письма (в секундах)
Время старта сессии 	0.0001 	0.0002 	секунд
Конфигурация PHP 	оптимально 	оптимально 	рекомендации
База данных MySQL (запись) 	7 748 	5 600 	количество запросов на запись в секунду
База данных MySQL (чтение) 	7 894 	7 800 	количество запросов на чтение в секунду
База данных MySQL (изменение) 	8 173 	5 800 	количество запросов на изменение в секунду

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

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

Абсолютно впустую потраченные деньги.

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

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

Stanson ★★★★★ ()
Последнее исправление: Stanson (всего исправлений: 5)
Ответ на: комментарий от Ford_Focus

На всякий случай напомню, что google рекомендует «reduce your server response time under 200ms»

Это не от Битрикса зависит.

curl -o /dev/null -w "Connect: %{time_connect} TTFB: %{time_starttransfer} Total time: %{time_total} \n" https://www.babai.ru
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 14509  100 14509    0     0   132k      0 --:--:-- --:--:-- --:--:--  132k
Connect: 0.030509 TTFB: 0.106913 Total time: 0.107790
suffix ()
Ответ на: комментарий от Ford_Focus

ты в код ядра битрикса заглядывал? :D

А ты?

обфусцированному куску того самого

а... все с тобой понятно. Что ты там обфуцированное увидел? 20 строчек в одном инклюде? Или ты принципиально смотрел не активированную копию где весь include.php обфусцирован? А зачем?

Suntechnic ★★★★★ ()
Ответ на: комментарий от Ford_Focus

На всякий случай напомню, что google рекомендует «reduce your server response time under 200ms»

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

Suntechnic ★★★★★ ()
Ответ на: комментарий от Suntechnic

Если не секрет, каким образом соблюдение рекомендации «reduce your server response time under 200ms» может привести к потере производительности у сайта, в котором люди совершают переходы?

dimuska139 ()
Ответ на: комментарий от dimuska139

Никаким. Я разве говорил что-то подобное? Я указал на то, что рекомендации гугла это истина в последней инстанции, подходят не всем и вообще ориентированы на людей которые не очень хорошо знают что делают. Они классные. Но они относятся к классу «если не знаешь как - делай так и точно не ошибешься».

Suntechnic ★★★★★ ()

Как-то совсем тухло. У них же есть готовая виртуалка с CentOS. Что мешает посмотреть конфиги там? Из коробки производительность 21.40 на i7 3770.

Tigger ★★★★★ ()
Ответ на: комментарий от Suntechnic

(не)соблюдение большинства рекомендаций гугла влияет на ранжирование сайта в поиске гугла и не только гугла.

Поэтому на первой странице поисковиков на общие («низкие») запросы ничтожно мало сайтов на bitrix.

Ford_Focus ★★★★★ ()
Последнее исправление: Ford_Focus (всего исправлений: 1)
Ответ на: комментарий от Ford_Focus

(не)соблюдение большинства рекомендаций гугла влияет на ранжирование сайта в поиске гугла и не только гугла.

Я в курсе, но при прочих равных. Это далеко не главные факторы ранжирования.

Поэтому на первой странице поисковиков на общие («низкие») запросы ничтожно мало сайтов на bitrix.

Не считал. Но я не вижу никаких препятствий получить на битрикс сайт соотвествующий требованиям гугл. Только мало кто за это хочет платить. Так что дело не в возможностях, а в том что нахрен оно никому не надо. Для большей части владельцев сайтов поисковая оптимизация сводится к установке счетчиков. Причем считается что чем больше счетчиков они поставят тем лучше сайт оптимизирован. А если вставить еще какой-нибудь говночат, то вдвое.

Suntechnic ★★★★★ ()

у вас какая коробочная версия стоит? У меня на корп. портале imgur

Характеристики :

System:    Host: example.com Kernel: 4.4.0-150-generic x86_64 (64 bit gcc: 5.4.0)
           Distro: Ubuntu 16.04 xenial
Machine:   System: Red Hat product: KVM v: RHEL 7.6.0 PC (i440FX + PIIX 1996)
           Mobo: N/A model: N/A Bios: Sea v: 1.11.0-2.el7 date: 04/01/2014
CPU(s):    4 Single core Intel Xeon E5-2680 v4s (-SMP-) cache: 65536 KB
           flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 ssse3) bmips: 19200
           clock speeds: max: 2399 MHz 1: 2399 MHz 2: 2399 MHz 3: 2399 MHz 4: 2399 MHz
Memory:    Array-1 capacity: 6 GB devices: 1 EC: Multi-bit ECC
           Device-1: DIMM 0 size: 6 GB speed: N/A type: RAM part: N/A
Graphics:  Card: Cirrus Logic GD 5446 bus-ID: 00:02.0
           Display Server: X.org 1.18.4 driver: N/A tty size: 135x30 Advanced Data: N/A for root
Network:   Card: Red Hat Virtio network device driver: virtio-pci port: c040 bus-ID: 00:03.0
Drives:    HDD Total Size: 107.4GB (41.0% used) ID-1: /dev/vda model: N/A size: 107.4GB
Partition: ID-1: / size: 99G used: 41G (44%) fs: ext4 dev: /dev/vda1
RAID:      No RAID devices: /proc/mdstat, md_mod kernel module present
Sensors:   None detected - is lm-sensors installed and configured?
Info:      Processes: 154 Uptime: 51 days Memory: 1190.7/5967.1MB Init: systemd runlevel: 5 Gcc sys: 5.4.0
           Client: Shell (bash 4.3.481) inxi: 2.2.35

sanekmihailow ()