Lexover's blog

О web-разработке простыми словами

Утилита django-admin/manage.py

django-admin - консольный интрумент Django для выполнения административных задач. Модуль manage.py автоматически создается в проекте Django, он выполняет задачи аналоичные django-admin, но при выполнении устанавливает переменную окружения DJANGOSETTINGSMODULE, чтобы она указывала на файл settings.py вашего проекта. При работе с одним проектом удобнее использовать manage.py. При необходимости перек ...

Читать далее...
Непрерывная интеграция Python сервиса с помощью git

Данная статья является продолжнием статьи о создании сервиса на Pyhon. Итак мы реализовали некоторый сервис который запускается и в фоне выполняет некоторые задачи (следит за изменением цен на очредной девайс, ведет незатейливую переписку в Telegram, и т.п.). Мы разместили его на нашем сервере (например на RaspberyPi) где он и выполняет рутинные задачи. Но сервис должен разваться, мы вносим измене ...

Читать далее...
Создание демона Python с использованием Systemd

Недавно у меня возникла задача создать демон (фоновое приложение) реализованный на Python в системе Linux использующей Systemd. В поисках современного решения и родилась данная статья. Ранее для реализации демона выполнялась "демонизация" приложения Python, зачастую с помощью библиотеки python-daemon. Даже была создана спецификация pep-3143 для реализации демонов. Но на текущий момент времени с ис ...

Читать далее...
Профилирование приложений Python

При разработке приложений периодически у разработчиков возникает вопрос - по какой причине реализованный код работает медленно, и где теряетсются драгоценные время и ресурсы? Здесь на помощь приходят инструменты профилирования. В текущем посте рассмотрим возможности профилирования приложений реализованных на Python с помощью различных инструментов профилирования, а также рассмотрим средства позвол ...

Читать далее...
Тестируем Django с pytest.

В текущем посте мы рассмотрим как производится тестирование приложения Django с помощью фреймворка pytest, рассмотрим механизмы тестирования, дополнительные модули и плагины, которые значительно упрощают данный процесс, позволяют выполнить параллельный запуск тестов, проанализировать покрытие кода тестами. Данная статья основана на великолепной статье Дмитрия Чувардинского Testing Your Django App ...

Читать далее...