mavrikkk / ha_kettler

allows you to connect Redmond SkyKettle, SkyCooker and SkyHeat to your Home Assistant. see README to know further
131 stars 51 forks source link

Утилизация CPU #31

Open Shadow2091 opened 4 years ago

Shadow2091 commented 4 years ago

Обновление интеграции от 2020/05/29 стало потреблять много процессорного времени, ЦП постоянно загружен на 100%. Раньше HassOs потребляла около 20% ЦП. Bluetooth используется только интеграцией.
Screenshot_20200601_132317

arch | x86_64 chassis | vm dev | false docker | true hassio | true host_os | HassOS 4.8 installation_type | Home Assistant os_name | Linux os_version | 5.4.43 python_version | 3.7.7 supervisor | 225 timezone | Europe/Moscow version | 0.110.4 virtualenv | false

mavrikkk commented 4 years ago

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

Shadow2091 commented 4 years ago

В ходе тестирования удалось выяснить, что проблема увеличивается при использовании управления чайником через HA. При включении сервера все ок, но чем больше используешь управление, тем больше потребляется ресурсов. Screenshot_20200602_153554

mavrikkk commented 4 years ago

подтверждаю...оказывается, проблема известная...баг в библиотеке bluepy

https://github.com/IanHarvey/bluepy/issues/239

есть патч, но до сих пор не в основной версии ))

Shadow2091 commented 4 years ago

Я так понимаю, нужно применять патч и перекомпилить хэлпер после каждого обновления HA?

ARNik commented 3 years ago

А есть ли какой-нибудь временный workaround чтобы пофиксить?

mavrikkk commented 3 years ago

да, выше точно читали?

подтверждаю...оказывается, проблема известная...баг в библиотеке bluepy

IanHarvey/bluepy#239

есть патч, но до сих пор не в основной версии ))

ARNik commented 3 years ago

Читал, но не могу понять как это сделать в hassos и возможно ли.

mavrikkk commented 3 years ago

в HassOS невозможно. Возможно в любой неавтоматической установке (HassIO, venv, doccker и тд).

  1. Я, когда сам использовал эту интеграцию, то просто...не делал ничего )) Туда-сюда не клацал без надобности. Автоматизация у меня раз в сутки работала. Потихоньку жор наращивался и бац...приходит обновление homeassistant, которое после установки перезагружает homeaasistant и интеграцию и в частности модуль bluepy-helper. Мне резерва всегда хватало между обновлениями версий.

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

  3. Другой вариант перенести работу на другую библиотеку, асинхронную. Однако опять встанет вопрос наличия скомпилированной библиотеки для HassOS.

  4. Есть еще идея взять уже исправленную библиотеку bluepy, либо стороннюю асинхронную библиотеку и поместить ее прямо внутрь модуля. Однако там тоже есть вопросы: если внутри библиотек есть компилируемые внешние части, то нужно думать с совместимостью с другими архитектурами: arm, x86 и тд и тп.

ARNik commented 3 years ago

А возможно как-то перезагружать из автоматизации только модуль bluepy-helper ?

mavrikkk commented 3 years ago

сходу могу предложить только перезапуск всего HA ночью раз в день.