Архив метки: python

NewRelic

Познакомился с отличной системой real time мониторинга python приложения (так же PHP, Ruby, Java и т.д.).

При разработке на Django большенство разработчиков используют django-debug-toolbar. Она является отличным инструментом. В дополнение можно использовать django-devserver вместо встроенного сервера django. С помощью devserver удобно просматривать SQL запросы при Ajax обращениях.

Но встает вопрос, что делать на продакшене? Как следить за производительностью приложения не замедляя его при этом. На данный момент лучшего решения, чем NewRelic для данных целей мне не удалось найти.

После подключения NewRelic к приложению мы сможем следить за: выполнением views в Django, запросами к базе данных, временем выполнения SQL, ошибками в разных частях проекта и многое другое.

Крупные проекты сегодня практически не обходятся без брокера сообщений для делегирования выполнения задач в фоновый режим. NewRelic позволяет следить за их работой и производительностью тоже. Например, Celery.

Кроме мониторинга самого приложения, можно следить за работой сервера.

Будем использовать.

Собственная проверка поля формы в Django

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

Например, нам необходимо получить от пользователя в качестве контакта «email» или «номер телефона». Пользователю требуется заполнить одно поле в форме, указав в нем одни из данных на выбор. Нам же необходимо проверить на серверной стороне что нам пришло и соответствует ли пришедшие данный требованиям.

В Django данное условие реализуется довольно легко с помощью создания собственного поля формы:

Собственно и все. Люблю Django. С ней код получается кратким и локаничным.

Установка Java 7 для PyCharm в Ubuntu 12.04

PyCharm отличный инструмент для Python разработчиков к коим я с недавних пор отношусь. Решил попробовать Beta версию данной программы и обнаружил в ней замечательную вещь.

IDE в открытом проекте можно указать виртуальное окружение, в которое установлен Python. Она просканирует все зависимости и будет работать только в рамках виртальной среды. Красота!

Что-то я отвлекся от главной темы. При запуске PyCharm ругался на OpenJDK и требовал установить Oracle Java т.к. с ней программа, по заявлению разработчиков, работает лучше.

Как обычно пришлось провести пару часов в поиске решения, чтобы установить Java 7 под Ubuntu 12.04 т.к. Canonical исключил партнерские репозитории Java.

Итак, приступим. Читать далее

Футболки

Решил себя порадовать и купил две футболки от http://inwebwetrust.org/. Прислали из Украины.

Все отлично, но после первой же стирки, большие, черные пятная приобрели серый цвет и потрескались. (((