вторник, 26 июля 2011 г.

OpenID провайдер для BlueBream: Начало

При выборе решения для создания SSO аутентификации мой окончательный выбор пал на OpenID.

воскресенье, 10 июля 2011 г.

вторник, 5 июля 2011 г.

FreeBSD: установка пакетов с расширениями для CPython

Одной из отличительных сторон FreeBSD по отношению к Linux является отличие в путях расположения некоторых файлов и частей системы. Непосредственно к установке питоновских пакетов с расширениями для CPython относятся пути: /usr/include и /usr/lib. В FreeBSD эти пути расположены тут: /usr/local/include и /usr/local/lib.

пятница, 1 июля 2011 г.

Scribe - сервер логирования в реальном времени

Не давно я запустил в продакшене приложение для сбора статистики прочтений авторских материалов и расчёта гонорара. Собственно счётчик показов был стандартный JavaScript + img. На стороне сервера данные фиксируются в лог-файле и раз в час производится обработка логов.
Исходя из особенностей обработки статистики и удобства работы с логами к ним предъявлялись следующие требования:
  • логи должны ротироватся ровно в полночь
  • в имени лог-файла должна быть соответствующая дата
  • в лог можно писать одновременно из нескольких процессов
Первые два пункта без проблем решаются стандартными средствами питоновского модуля logging и хендлера TimedRotatingFileHandler. А вот для того, что бы реализовать третий пункт треубется специальный, отдельно запущенный сервер логирования (есть конечно варианты реализации с использованием модуля multiprocessing, но мне этот вариант не нравится).