Согласно статистическим данным проекта W3techs, более 80% веб-приложений и сайтов работают на серверах с открытым исходным кодом. Не зря именно о «доминировании в сети» чаще всего говорят сторонники Open Source, когда заходит речь о доле Linux на рынке.
На какие проекты следует обратить внимание в первую очередь? Какие открытые серверы лучше всего подойдут для решения пользовательских задач?
Эксперт в области e-Government Робин Мульвижк на страницах сайта OpenSource.com предлагает пять наиболее популярных открытых веб-серверов.
Apache HTTP Server
В феврале 2015 года этот проект отметил своё двадцатилетие. Это самый популярный веб-сервер в мире — по данным W3techs, на нём работает 52% всех сайтов в мире.
Чаще всего платформой для Apache HTTP Server является Linux. Но приложение мультиплатформенное — сервер можно развернуть на OS X или Windows. Решение построено по модульному принципу, поэтому при необходимости его функциональность расширяется. Например, при помощи модуля mod_proxy на сервере создаётся шлюз, модуль mod_proxy_balancer сбалансирует нагрузку для всех поддерживаемых протоколов, а модуль mod_http2 отвечает за поддержку HTTP/2.
Проект сопровождается прекрасной документацией и комплексной поддержкой со стороны других пользователей. Распространяется решение на условиях Apache License v. 2.
NGINX
Разработка этого сервера началась в 2002 году российским программистом Игорем Сысоевым. Первый публичный выпуск приложения состоялся в 2004 году и по сути являлся ответом на проблему C10K — задачи по построению высокопроизводительного сервера, способного одновременно обслуживать 10 тысяч соединений.
Согласно данным W3techs, этот сервер занимает второе место по популярности в мире среди решений с открытым исходным кодом. На нём работает чуть больше 30% всех сайтов.
Чаще всего системные администраторы выбирают NGINX из-за высокой производительности и способности к масштабированию. Решение прекрасно подходит для обработки множества параллельных сеансов.
Распространяется приложение на условиях очень короткой BSD-подобной лицензии.
Apache Tomcat
Apache Tomcat — открытое приложение, разрабатываемое Apache Software Foundation и представляющее собой контейнер сервлетов, который функционирует в качестве веб-сервера, расширяя таким образом его функциональность. Написан на языке Java. Изначально права на решение принадлежали компании Sun Microsystems, которая в 1999 году безвозмездно передала их фонду.
Как правило, Apache Tomcat используется либо как обслуживающий локальные файлы самостоятельный веб-сервер, либо как сервер приложений на Apache HTTP Server. По данным W3techs, он применяется на 1% всех сайтов Интернета.
Распространяется приложение на условиях Apache License v. 2.
Node.js
Разработка Node.js началась в 2009 году Райаном Далем. В настоящее время проектом управляет Node.js Foundation при поддержке Linux Foundation. Согласно данным W3techs, рыночная доля решения составляет 0,2%.
Node.js представляет собой платформу для выполнения сетевых приложений и зачастую играет роль самостоятельного веб-сервера. Благодаря своим конструктивным особенностям он позволяет добиться высокой пропускной способности и масштабируемости веб-приложений, работающих в режиме реального времени, что весьма актуально для браузерных игр.
Распространяется приложение на условиях оригинальной лицензии.
Lighttpd
Первый выпуск этого приложения датирован мартом 2003 года. Как и NGINX, веб-сервер Lighttpd способен поддерживать 10 тыс. соединений одновременно, что стало возможно благодаря их асинхронной обработке. По данным W3techs, этот сервер обслуживает 0,1% всех сайтов.
Отличительные особенности Lighttpd — небольшая нагрузка на процессор и высокая скорость оптимизации. Заложенные в его работу принципы позволяют сделать загруженность платформы независимой от числа текущих соединений.
Распространяется решение на условиях лицензии BSD.