| nginx  30.09.2011 
nginx [engine x]  это HTTP-сервер и почтовый прокси-сервер.
Я начал разрабатывать nginx весной 2002 года, а осенью 2004 года вышел
первый публично доступный релиз.
В декабре 2009 года nginx использовался на
4% самых посещаемых сайтов в мире.
 
Основная функциональность HTTP-сервера:
 
обслуживание статических запросов,
индексных файлов,
автоматическое
создание списка файлов,
кэш
дескрипторов открытых файлов;
акселерированное
проксирование с кэшированием,
простое
распределение нагрузки и отказоустойчивость;
акселерированная
поддержка удалённых FastCGI серверов с кэшированием,
простое
распределение нагрузки и отказоустойчивость;
модульность, фильтры, в том числе
сжатие (gzip),
byte-ranges (докачка),
chunked ответы,
XSLT-фильтр,
SSI-фильтр,
преобразование
изображений;
несколько подзапросов на одной странице, обрабатываемые в SSI-фильтре
через прокси или FastCGI, выполняются параллельно.
поддержка SSL и
расширения TLS SNI;
 
Функциональность почтового прокси-сервера:
 
IMAP и POP3:
перенаправление пользователя на IMAP или POP3-бэкенд с использованием
внешнего HTTP-сервера аутентификации;
SMTP:
проверка пользователя с помощью внешнего HTTP-сервера аутентификации
и перенаправление соединения на внутренний SMTP-сервер;
методы аутентификации:
POP3: USER/PASS, APOP, AUTH LOGIN/PLAIN/CRAM-MD5;
IMAP: LOGIN, AUTH LOGIN/PLAIN/CRAM-MD5;
SMTP: AUTH LOGI/ PLAIN/CRAM-MD5;
поддержка SSL;
поддержка STARTTLS и STLS;
 
Операционные системы и платформы:
 
тестировалась сборка и работа на:FreeBSD 3    7 платформа i386;
FreeBSD 3    7 платформа amd64;
 Linux 2.2    2.6 платформа i386;
Linux 2.6 платформа amd64;
 Solaris 9 платформы i386 и sun4u;
Solaris 10 платформы i386, amd64 и sun4v;
 MacOS X платформы ppc, i386;
 Windows XP, Windows Server 2003.
 
Архитектура и масштабируемость:
 
один главный процесс и несколько рабочих, рабочие процессы работают под 
непривилегированным пользователем;
поддержка kqueue (FreeBSD 4.1+),
epoll (Linux 2.6+), rt signals (Linux 2.2.19+),
/dev/poll (Solaris 7 11/99+),
event ports (Solaris 10),
select и poll;
использование возможностей, предоставляемых kqueue, таких как
 EV_CLEAR, EV_DISABLE (для временного выключения события),
NOTE_LOWAT, EV_EOF, число доступных данных, коды ошибок;
поддержка sendfile (FreeBSD 3.1+, Linux 2.2+, Mac OS X 10.5+),
sendfile64 (Linux 2.4.21+) и sendfilev (Solaris 8 7/01+);
поддержка файлового
AIO (FreeBSD 4.3+, Linux 2.6.22+);
поддержка DIRECTIO
(FreeBSD 4.4+, Linux 2.4+, Solaris 2.6+, Mac OS X);
поддержка
accept-фильтров (FreeBSD 4.1+) и TCP_DEFER_ACCEPT (Linux 2.4+);
на 10 000 неактивных HTTP keep-alive соединений расходуется
около 2.5M памяти;
минимум операций копирования данных;
 
Другие возможности HTTP-сервера:
 (C) Игорь Сысоевhttp://sysoev.ru
 |