mysql грузит процессор

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Ответить
Aleksei.kor
Сообщения: 14
Зарегистрирован: Вс мар 31, 2019 7:21 pm

mysql грузит процессор

Сообщение Aleksei.kor »

Добрый день! Помогите решить проблему.
У меня установлена система Majordomo на ПК с процессором Atom425. Операционная система Ubuntu 16.04.6 LTS. После установки системы загрузка процессора не превышает 35-40% в пике. Через несколько дней загрузка процессора становится 90-100%. Процессор грузит процесс mysql.
Если отключить все устройства ESP8266 (wifiot) 3 шт, то загрузка процессора не превышает 30%.
Помогите пожалуйста кто нибудь!
Jilber
Сообщения: 719
Зарегистрирован: Ср май 03, 2017 7:41 pm

Re: mysql грузит процессор

Сообщение Jilber »

Не могут ESP слишком часто передавать данные ? И в "Устройствах онлайн" какой интервал проверки ? Модуль "Optimizer" не пробовал если история свойств включена ? У меня когда слишком много данных в истории, то тоже подтормаживать начинает.
Aleksei.kor
Сообщения: 14
Зарегистрирован: Вс мар 31, 2019 7:21 pm

Re: mysql грузит процессор

Сообщение Aleksei.kor »

ESP отсылали данные каждые 10 сек.
Установил 30сек. загрузка снизилась.
Если вообще отключить передачу от ESP то загрузка 5%
zukum
Сообщения: 3
Зарегистрирован: Ср июл 04, 2018 11:35 am

Re: mysql грузит процессор

Сообщение zukum »

У меня также была проблема - каждую минуту MySQL начинал грузить процессор, отчего безвентиляторный компьютер сильно грелся.
В результате анализа чем занят MySQL выяснил что он после каждой обработки сообщений от датчика(esp8266) пытается зачистить исторические данные старше - в моей случае 2000дней в таблице phistory. Т.к. таблица под несколько мильонов записей - эта операция сильно нагружала процессор. Закоментировал в cycle_main.php строки "//SQLExec("DELETE FROM $table_name WHERE VALUE_ID='" . $keep_rec['VALUE_ID'] . "' AND TO_DAYS(NOW())-TO_DAYS(ADDED)>" . (int)$keep_rec['KEEP_HISTORY']);" - проблема решилась.
Комп грется перестал.
Считаю что код написан неоптимально. ЗАчистку надо проводить максимум раз в сутки по всем свойствам объектов системы а не после каждого обновления свойства.
Ответить