Ошибки и предложения

В этом разделе вы можете проголосовать за идеи по открытым проектам. Вы всегда можете предложить свою идею, перейдя на страницу проекта.

Спасибо!

Мы очень рады, что Вам нравится данный проект и вы проголосовали за его развитие.

Работа над задачами по проекту отнимает у его разработчика самое ценное — время, так что небольшая компенсация в виде материальной поддержки поднимет интерес к разработке и позволит сделать больше задач для общей пользы :)

Перейти к проекту Нет, спасибо

<<< Назад

При записи топиков в брокер создается очень много зависших процессов apachу2 (Broken pipe)

Добавлено: 2020-11-21 11:54:55 / Статус: Новая / Проект: Дополнение MQTT

https://github.com/sergejey/majordomo-mqtt/issues/...

SD Термостат при включении публикует в mqtt топик 30-50 раз в секунду.
Создается много 30-250 зацикленных процессов apache2
strace -p xxx
sendto(15, "\0\22/ESP32-51/output181", 21, 0, NULL, 0) = -1 EPIPE (Обрыв канала)
--- SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=6182, si_uid=33} ---
Процессы apache2 забивают CPU, система не отвечает.
Из ошибок только это
"Maximum execution time of 180 seconds exceeded","file":"\/opt\/majordomo_0\/html\/3rdparty\/phpmqtt\/phpMQTT.php","line":436}
Если ставлю в конец цикла cycle_mqtt.php задержку на полсекунды, то apache2 не множится, но топики читаются плохо.
Комп быстрый i5, debian10
Предлагаю не публиковать повторно топик так часто. В коде есть заремленыый кусок DELETE FROM mqtt_queue.

+1
 
Обсуждение (0)