Skip to content

Concept: reorganization for daemon [RUS]  #28

Description

@idlesign

Для повышения гибкости приложения следует рассмотреть возможность и целесообразность запуска торрта фоновым процессом. Примерная схема:

20190211_204832

Из схемы видно, что фоновый процесс должен будет предоставлять возможность взаимодействия с собой других компонентов, таких как различные UI (CLI, Web), предположительно по HTTP API.

В качестве базы для приложения можно использовать каркас для веб-приложений, например Django. Благодаря каркасу можно будет дёшево и быстро развивать все подсистемы приложения. Так, например, можно перенести данные из файла конфигурации в БД (в портативном виде на sqlite), из коробки иметь решение по ограничению доступа к API/Web, а также решения для построения самого веб-интерфейса (с удобным управлением торрентами, настройками и пр).

Минусом использования полноценного каркаса типа Django является его размер, что может быть критично, например, для старых или маломощных NAS. Помимо этого, желательно использование свежих версий каркаса, что выливается в необходимость Python 3.5+, которого тоже может не быть на устройствах. Хотя торрт и участвует в LBC, и поддержка Python 2 будет выпилена в 2020-м, нужно подумать на сколько критична поддержка <3.5.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions