ФорумПрограммированиеPythonFlask → Помогите сделать выбор - отдельный процесс или же отдельный поток во flask?

Помогите сделать выбор - отдельный процесс или же отдельный поток во flask?

  • zhan

    Сообщения: 4 Репутация: N Группа: Кто попало

    Spritz 5 октября 2016 г. 5:38

    Доброго времени суток уважаемые форумчане.
    Решил сделать систему отопления у себя в квартире. Отопления газовое, автономное (газовый котёл в квартире). В качестве контроллера управления raspberry pi. По квартире брошены датчики ds18b20. Захотелось управлять отоплением через web интерфейс, создавать расписания и настройки работы системы. Все настройки хранятся в базе данных. Выбор пал на flask+lighttpd. Python и flask начал изучать недавно, так что просьба, если задаю глупые вопросы, ногами не бить.
    Так вот вопрос, как лучше сделать? Код температурного регулятора написать в самом flaske или же его вынести в отдельный (не зависящий от flask) файл (модуль). Скажем так запустить отдельным процессом.
    Если в самом flaske, то создавать отдельный поток? Как я понимаю в таком случае разделяемый ресурс у меня будет база данных. Кстати использую flask-sqlalchemy и сессии я так понимаю не позволят испортить данные в базе в случае одновременной работы с записями.

  • Sinkler

    Сообщения: 9648 Репутация: N Группа: в ухо

    Spritz 5 октября 2016 г. 7:58, спустя 2 часа 20 минут 41 секунду

    @zhan, ну судя по тому что должен быть постоянно работающий процесс, который может что-то выключать-включать по расписанию в любое время дня и ночи, то нужен отдельный процесс, который будет работать всегда, а через flask уже управлять значениями в бд, которые читает этот процесс

    данные не испортятся, для этого бд и придумали smile

  • zhan

    Сообщения: 4 Репутация: N Группа: Кто попало

    Spritz 5 октября 2016 г. 8:17, спустя 18 минут 46 секунд

    На странице ещё будет кнопка (хотелось бы), типо включить/отключить отопление. И только после того как отопление включено скрипт (процесс) должен смотреть в бд и брать настройки для работы (нагрева). Из flaska можно же запустить внешний модуль (скрипт)? Тогда было бы круто.

  • Sinkler

    Сообщения: 9648 Репутация: N Группа: в ухо

    Spritz 5 октября 2016 г. 9:53, спустя 1 час 36 минут 8 секунд

    можно, как и просто в питоне (например через модуль subprocess)

  • zhan

    Сообщения: 4 Репутация: N Группа: Кто попало

    Spritz 5 октября 2016 г. 11:32, спустя 1 час 38 минут 36 секунд

    ок. тогда так и сделаю. Sinkler спасибо!

Пожалуйста, авторизуйтесь, чтобы написать комментарий!