Pull to refresh
67
0
Send message

Асинхронные задания в Django c помощью Celery

Reading time 5 min
Views 65K
Приветствую!
Думаю, большинство разработчиков Django слышали о Celery — системе асинхронного выполнения заданий, а многие даже активно её используют.

Около года назад на хабре была довольная хорошая статья, рассказывающая о том, как использовать Celery. Однако, как было упомянуто в заключении, уже вышла Сelery 2.0 (на данный момент стабильной версией является 2.2.7), где интеграция с django была вынесена в отдельный пакет, а также произошли другие изменения.

Данная статья будет полезна прежде всего новичкам, которые начинают работать с Django, и им требутся что-то, способное выполнять асинхронные и/или периодические задания в системе (например очистку устаревших сессий). Я покажу как установить и настроить Сelery для работы с Django от начала до конца, а также расскажу про некоторые другие полезные настройки и подводные камни.
Итак, приступим.
Total votes 56: ↑51 and ↓5 +46
Comments 64

Парсер в Nimbus Note, или как мы решали проблему «чистого» HTML

Reading time 3 min
Views 2.9K
Одна из ключевых возможностей Nimbus Note — это сохранение и/или редактирование заметок в виде html-документа. И заметки эти создаются/редактируются в браузере или на мобильных устройствах. После чего — отправляются на сервер. А как подсказывает профессиональная паранойя — информации пришедшей от пользователя доверять нельзя. Т.к. там может быть всё что угодно: XSS, документ, превращающий вёрстку в мечту абстракциониста или вообще ни разу не текст. Следовательно, данные пришедшие от пользователя нуждаются в предварительной обработке. В этой статье я опишу некоторые особенности нашего решения данной проблемы.

Читать дальше →
Total votes 9: ↑7 and ↓2 +5
Comments 2

Выучить французский и остаться в Тулузе

Reading time 3 min
Views 68K
image
Про Тулузу многие читатели Хабра должны были слышать как о штаб-квартире Аэробус и аэрокосмическом центре Европы. К этому добавлю, что до Средиземного моря отсюда меньше двух часов езды и до Атлантического океана три часа на машине. Так же в двух шагах Пиренеи и Испания. Температура воздуха сегодня 27 градусов. Если вам интересно, то я могу раскрыть легкий способ переехать сюда жить.
Читать дальше →
Total votes 32: ↑28 and ↓4 +24
Comments 30

Вычисление рекуррентных соотношений на Perl

Reading time 3 min
Views 4.6K
Привет,
в этом посте я расскажу рецепт добавления функциональности в Перл.

Как уже стало понятно из названия, мы будем вычислять рекуррентные соотношения.
Например, формулы для вычисления факториала выглядят вот так:
f(0) = 1
f(n) = n * f(n-1)


Функциональные языки программирования позволяют определять такие функции достаточно просто, в Erlang это делается следующим образом:
factorial(0) ->
    1;
factorial(N) ->
    N * factorial(N-1).


А теперь попробуем сделать нечто похожее, что позволяло бы нам писать код вида:
#!/usr/bin/perl -I./lib
use strict;
use bigint;
 
use Recurrent;
 
recurrent fac => {
    arg(0) => lambda { my($n) = @_; return 1 },
    arg(n) => lambda { my($n) = @_; return $n * fac($n-1) },
};
 
print fac(100);

Из примера видно, что у нас появились новые функции recurrent, arg, n и lambda. На самом деле, практическая польза есть только у recurrent, все остальные нужны лишь для получения более «красивого» кода.

Давайте напишем модуль Recurrent.pm
Читать дальше →
Total votes 24: ↑20 and ↓4 +16
Comments 15

Вышла Rework в русском переводе

Reading time 2 min
Views 12K
На этой неделе книга уже появилась на полках многих интернет-магазинов.
Не так давно обсуждалась на Хабре публикация английского оригинала и вот наконец-то можно оценить и переведенную версию. Я пока просмотрел лишь доступные в сети отрывки, но судя по другим публикациям издательства, они делают свое дело на хорошем уровне.
image

Поехал за книгой в магазин. А пока некоторые отрывки из книги и комментарии:
Читать дальше →
Total votes 79: ↑75 and ↓4 +71
Comments 84

Information

Rating
Does not participate
Registered
Activity