nixp.ru v3.0

24 мая 2017,
среда,
18:36:13 MSK

DevOps с компанией «Флант»
Anarchist написал 3 апреля 2007 года в 12:43 (386 просмотров) Ведет себя как мужчина; открыл 258 тем в форуме, оставил 4097 комментариев на сайте.

Прорабатываю вопрос фильтрации спама (для электронной почты).

Нулевое приближение показало, что как минимум бОльшая часть спам-фильтров написана на интерпретируемых языках программирования.

Вопрос: были ли проекты спам-фильтров использующие менее ресурсоёмкие решения?

Без снижения требований по эффективности (целесообразность блокировки по базе IP-адресов посчитана сомнительной).

Дмитрий Шурупов

Ну, большая или нет…

У Courier’а, например:

http://www.courier-mta.org/maildrop/

maildrop — mail delivery agent with filtering abilities

[..]

maildrop is written in C++, and is significantly larger than procmail. However, it uses resources much more efficiently. Unlike procmail, maildrop will not read a 10 megabyte mail message into memory. Large messages are saved in a temporary file, and are filtered from the temporary file. If the standard input to maildrop is a file, and not a pipe, a temporary file will not be necessary.

Но это еще и MTA, а про отдельный mail filter для Courier — пишут, что есть и на Си (http://www.courier-mta.org/intro.html):

Integrated mail filtering. An API is provided for installing arbitrary external mail filters, and the system administrator can selectively enable for any mail source (ESMTP, UUCP, locally submitted mail) for filtering. Two example mail filters are included — one written in C that uses threads, and a Perl-based filter.

--

А еще есть, скажем, DSPAM (http://dspam.nuclearelephant.com/):

Written in C for speed, performance, and scalability. Unlike Python or PERL solutions, DSPAM is written in a low-level compiled language, meaning there is very little overhead. DSPAM runs fast, efficient, and doesn’t depend on any third-party language interpreters.

Feuerbach

Есть еще spamc+spamd — тот же spamassassin, но более эффективный на больших нагрузках.

In theory, this child-forking should be quite efficient, since on most OSes

the fork will not actually copy any memory until the child attempts to write

to a memory page, and then only the dirty page(s) will be copied.  This means

the entire perl engine and the SA regular expressions, etc. will only be

loaded once and then be reused by all the children, saving a lot of overhead.

А spamc написан на C.

Anarchist
Feuerbach
Есть еще spamc+spamd — тот же spamassassin, но более эффективный на больших нагрузках.

А spamc написан на C.

Thanks.

Ещё (ибо уже куплен) рассматривается вариант с шедевром Касперского.

Anarchist
Dmitry Shurupov
А еще есть, скажем, DSPAM (http://dspam.nuclearelephant.com/):

Written in C for speed, performance, and scalability. Unlike Python or PERL solutions, DSPAM is written in a low-level compiled language, meaning there is very little overhead. DSPAM runs fast, efficient, and doesn’t depend on any third-party language interpreters.

Написан-то он на C, однако взаимодействует с самостоятельными приложениями, причём используя SQL.

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

Буду смотреть на dspam && spamc.

А ещё завтра с утра надо будет на свежую голову почитать секцию касаемо принципов функционирования Каспера.