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

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

Модератор: immortal

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

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 КБ) 884 просмотра
п.с. если говорить именно про таймеры, очистку лишнюю убрал
остальное в курилке описывал, запрос с лишней выборкой из не используемого поля, ежесекундная очистка по експире
т.е. если смотреть то в каждом модуле можно по мелочи что то найти и улучшить
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Chainik
Сообщения: 1360
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 224 раза
Поблагодарили: 427 раз

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

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

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

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.18%
Chainik
Сообщения: 1360
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 224 раза
Поблагодарили: 427 раз

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

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

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

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

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

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

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

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

Есть ли в системе таймеры, нет ли их - каждую секунду запускается запрос на их проверку. Если время сработки одного или нескольких таймеров на этот момент подошло - они обработаются. Таймеры или джобы лежат в отдельной таблице, запрос проверки легок. ну сколько там таймеров лежит? 50, 100? Это ерунда для мускула выбрать из них сработавший сейчас. и неважно, на секунду установлен таймер или на сто лет - он так же только одну запись в таблице занимает
За это сообщение автора xor поблагодарил:
Chainik (Ср фев 17, 2021 8:42 am)
Рейтинг: 1.18%
Аватара пользователя
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 КБ) 462 просмотра
Снимок экрана (14).png
Снимок экрана (14).png (148.22 КБ) 462 просмотра
Снимок экрана (13).png
Снимок экрана (13).png (159.39 КБ) 462 просмотра
Снимок экрана (12).png
Снимок экрана (12).png (167.55 КБ) 462 просмотра
Снимок экрана (11).png
Снимок экрана (11).png (310.08 КБ) 462 просмотра
Аватара пользователя
Yojiq
Сообщения: 18
Зарегистрирован: Пт янв 17, 2020 10:44 am
Откуда: Славянск
Благодарил (а): 4 раза
Поблагодарили: 0

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

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

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

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 КБ) 449 просмотров
skysilver
Сообщения: 3000
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 397 раз
Поблагодарили: 1725 раз
Контактная информация:

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

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

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