[DASH] Количество запросов в БД

Всё, что не подходит под вышеперечисленные разделы

Модератор: immortal

Logrus
Сообщения: 2077
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 456 раз

Re: [DASH] Количество запросов в БД

Сообщение Logrus » Вт фев 16, 2021 1:58 pm

Screenshot_2021-02-16-15-57-23.png
Screenshot_2021-02-16-15-57-23.png (72.38 КБ) 2869 просмотров
п.с. если говорить именно про таймеры, очистку лишнюю убрал
остальное в курилке описывал, запрос с лишней выборкой из не используемого поля, ежесекундная очистка по експире
т.е. если смотреть то в каждом модуле можно по мелочи что то найти и улучшить
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Chainik
Сообщения: 1462
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 260 раз
Поблагодарили: 454 раза

Re: [DASH] Количество запросов в БД

Сообщение Chainik » Вт фев 16, 2021 2:17 pm

SmoKE_xDDD писал(а):
Вт фев 16, 2021 1:00 pm
А можно так: открыл дверь - датчик открытия включил свет - записали время открытия двери - датчки движения прислал, что нет движения 600 секунд - выключили свет. Все без таймеров.
Но так датчик движения у нас "глупый", он сам не может сообщать, что уже не активировался 10 минут. Значит мы вынуждены будем программно проверять хотя бы ежеминутно, превысило ли время с момента последнего срабатывания датчика 10 минут или еще нет. Т.е. должны будем каждую минуту читать свойство (последнее время срабатывания), сравнивать с текущим временем, принимать решение, выключать свет или нет. Не будет ли все это бОльшей нагрузкой на БД, чем 1 запущенный таймер?
Аватара пользователя
SmoKE_xDDD
Сообщения: 816
Зарегистрирован: Ср апр 17, 2019 5:00 pm
Откуда: Нижний Новгород
Благодарил (а): 110 раз
Поблагодарили: 898 раз

Re: [DASH] Количество запросов в БД

Сообщение SmoKE_xDDD » Вт фев 16, 2021 2:29 pm

Chainik писал(а):
Вт фев 16, 2021 2:17 pm
SmoKE_xDDD писал(а):
Вт фев 16, 2021 1:00 pm
А можно так: открыл дверь - датчик открытия включил свет - записали время открытия двери - датчки движения прислал, что нет движения 600 секунд - выключили свет. Все без таймеров.
Но так датчик движения у нас "глупый", он сам не может сообщать, что уже не активировался 10 минут. Значит мы вынуждены будем программно проверять хотя бы ежеминутно, превысило ли время с момента последнего срабатывания датчика 10 минут или еще нет. Т.е. должны будем каждую минуту читать свойство (последнее время срабатывания), сравнивать с текущим временем, принимать решение, выключать свет или нет. Не будет ли все это бОльшей нагрузкой на БД, чем 1 запущенный таймер?
Вы можете раз в 10 минут проверять сразу несколько датчиков, а не только 1 и в этом будет толк. Если у вас только 2 таких датчика, то проще запускать таймер.
За это сообщение автора SmoKE_xDDD поблагодарил:
Chainik (Вт фев 16, 2021 2:52 pm)
Рейтинг: 1.16%
Chainik
Сообщения: 1462
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 260 раз
Поблагодарили: 454 раза

Re: [DASH] Количество запросов в БД

Сообщение Chainik » Вт фев 16, 2021 3:08 pm

А не лучше ли будет с точки зрения снижения нагрузки на БД делать "AddScheduledJob" с заданием "выключить свет", а при выключении света удалять запущенный "AddScheduledJob"?
Logrus
Сообщения: 2077
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 456 раз

Re: [DASH] Количество запросов в БД

Сообщение Logrus » Вт фев 16, 2021 5:33 pm

Chainik писал(а):
Вт фев 16, 2021 3:08 pm
А не лучше ли будет с точки зрения снижения нагрузки на БД делать "AddScheduledJob" с заданием "выключить свет", а при выключении света удалять запущенный "AddScheduledJob"?
он от таймера в контексте запросов ничем не отличается
а реализация логики в румс есть сомебодихере, которое по событию с дд сбрасывается таймером
За это сообщение автора Logrus поблагодарил:
Chainik (Ср фев 17, 2021 8:42 am)
Рейтинг: 1.16%
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Аватара пользователя
xor
Сообщения: 2036
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 283 раза
Поблагодарили: 628 раз

Re: [DASH] Количество запросов в БД

Сообщение xor » Ср фев 17, 2021 3:15 am

Есть ли в системе таймеры, нет ли их - каждую секунду запускается запрос на их проверку. Если время сработки одного или нескольких таймеров на этот момент подошло - они обработаются. Таймеры или джобы лежат в отдельной таблице, запрос проверки легок. ну сколько там таймеров лежит? 50, 100? Это ерунда для мускула выбрать из них сработавший сейчас. и неважно, на секунду установлен таймер или на сто лет - он так же только одну запись в таблице занимает
За это сообщение автора xor поблагодарил:
Chainik (Ср фев 17, 2021 8:42 am)
Рейтинг: 1.16%
Аватара пользователя
Yojiq
Сообщения: 18
Зарегистрирован: Пт янв 17, 2020 10:44 am
Откуда: Славянск
Благодарил (а): 4 раза
Поблагодарили: 0

Re: [DASH] Количество запросов в БД

Сообщение Yojiq » Ср мар 24, 2021 4:33 am

Всем доброго времени !
не могу побороть количество цифр после запятой
пользовался инструкцией - https://kb.mjdm.ru/filtraciya-i-okrugle ... majordomo/
когда убираю свойство и ввожу метод данные с датчика вообще пропадают, что делаю не так подскажите ?
Вложения
Снимок экрана (15).png
Снимок экрана (15).png (145.29 КБ) 2447 просмотров
Снимок экрана (14).png
Снимок экрана (14).png (148.22 КБ) 2447 просмотров
Снимок экрана (13).png
Снимок экрана (13).png (159.39 КБ) 2447 просмотров
Снимок экрана (12).png
Снимок экрана (12).png (167.55 КБ) 2447 просмотров
Снимок экрана (11).png
Снимок экрана (11).png (310.08 КБ) 2447 просмотров
Аватара пользователя
Yojiq
Сообщения: 18
Зарегистрирован: Пт янв 17, 2020 10:44 am
Откуда: Славянск
Благодарил (а): 4 раза
Поблагодарили: 0

Re: [DASH] Количество запросов в БД

Сообщение Yojiq » Ср мар 24, 2021 4:46 am

на втором скрине температуру еще показывает потому что не нажал применить
проблема в esp - слишком много данных вываливает
много датчиков на ней
AK1
Сообщения: 135
Зарегистрирован: Чт фев 13, 2020 6:39 pm
Благодарил (а): 23 раза
Поблагодарили: 30 раз

Re: [DASH] Количество запросов в БД

Сообщение AK1 » Ср мар 24, 2021 5:54 am

Yojiq писал(а):
Ср мар 24, 2021 4:33 am
Всем доброго времени !
не могу побороть количество цифр после запятой
пользовался инструкцией - https://kb.mjdm.ru/filtraciya-i-okrugle ... majordomo/
когда убираю свойство и ввожу метод данные с датчика вообще пропадают, что делаю не так подскажите ?
Обнови прошивку

Или поменяй первые строки кода

if ($params['NEW_VALUE'] == $params['OLD_VALUE']) return;
$temp = $params['NEW_VALUE'];
Вложения
Безымянный.png
Безымянный.png (28.96 КБ) 2434 просмотра
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: [DASH] Количество запросов в БД

Сообщение skysilver » Ср мар 24, 2021 2:02 pm

Yojiq писал(а):
Ср мар 24, 2021 4:33 am
Всем доброго времени !
не могу побороть количество цифр после запятой
Вы название темы читали?! К чему здесь этот офтоп?
За это сообщение автора skysilver поблагодарил:
SmoKE_xDDD (Ср мар 24, 2021 2:24 pm)
Рейтинг: 1.16%
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Ответить