Перейти к содержимому

Apache software foundation что это

  • автор:

Apache Software Foundation

Apache Software Foundation (ASF) — организация-фонд, способствующая развитию проектов программного обеспечения Apache, к которым относится среди прочего веб-сервер Apache. ASF была сформирована в 1999 году из Apache Group в Делавэре, США.

Сообщество ASF состоит из разработчиков-энтузиастов, живущих в разных странах мира и участвующих в различных Open Source проектах.

Отличительные черты проектов Apache — это совместная разработка кода и открытая, прагматичная лицензия — Apache Software License.

Руководит каждым из проектов команда избранных экспертов, которые сами принимают активное участие в процессе разработки.

Членами организации могут стать только те люди, которые внесли значительный вклад в развитие/разработку проектов.

Основные задачи фонда — это юридическая защита участников проекта и защита марки «Apache». ASF была разработана лицензия Apache, широко используемая в рамках других проектов.

Среди платиновых (более 100 000 долл. в год) спонсоров проекта — Google и Yahoo!. [1] В июле 2008 года к ним присоединилась Microsoft. [2]

ASF ежегодно проводит конференции ApacheCon.

Проекты

Активные проекты

  • Apache HTTP Server
  • Apache Ant
  • Apache Cocoon
  • Apache Jackrabbit
  • Apache Harmony
  • Apache Portable Runtime (APR)
  • DB
  • Apache Directory Server
  • Excalibur
  • Apache Velocity
  • Apache XML Project
  • CouchDB
  • Cassandra
  • Forrest
  • Geronimo
  • Gump
  • Hadoop
  • Incubator
  • Jakarta
  • James
  • Lenya
  • Logging Services
  • Lucene
  • Maven
  • MyFaces
  • OFBiz
  • OpenOffice
  • Portals
  • SpamAssassin
  • Struts
  • TCL
  • Traffic Server
  • Tomcat
  • Web Services
  • Wicket
  • Xerces
  • XMLBeans
  • XML Graphics

Остановленные проекты

Закрытые проекты

Примечания

  1. Thanks — The Apache Software Foundation
  2. CyberSecurity.ru | технологии | Microsoft стала спонсором разработки веб-сервера Apache

Ссылки

  • Официальный сайт (англ.)
  • Официальный сайт конференций ApacheCon (англ.)
Apache Commons BCEL • BSF • JCS
Apache Lucene Lucene Java • Lucene4c • Lucy• Solr
Apache DB Derby • Torque • DdlUtils • OJB • JDO

Что такое Apache

Что такое Apache

Интернет невозможно представить без всевозможных сайтов. Все они работают за счёт веб-серверов – программ, отвечающих за передачу данных от физических хранилищ до браузеров пользователей.

Веб-сервер работает в качестве «посредника» между пользователем и физическим сервером. При получении запроса от посетителя он ищет необходимую страницу в каталоге с сайтом и отправляет её в ответ. Браузер принимает полученный файл, обрабатывает его и отображает на экране посетителя.

Передача информации веб-сервера выполняется по протоколу HTTP (HyperText Transfer Protocol), изначально созданного для работы с HTML-страницами. Уже позже стало возможным отправлять через HTTP файлы любых типов. В последнее время преобладают сайты, работающие через HTTPS. Это улучшенная версия HTTP, которая отличается от предшественника тем, что поддерживает шифрование трафика TLS/SSL между пользователем и сервером.

Звание самого популярного веб-сервера в мире уже более 25 лет удерживает за собой Apache HTTP Server, который принято называть сокращенно Apache или «Апач». Сегодня программа обслуживает более 40% всех существующих серверов, включая проекты IBM, eBay, PayPal и Facebook.

Рассмотрим причины популярности Apache подробнее. Это не только пополнит копилку знаний об интернет-технологиях, но и поможет сделать правильный выбор веб-сервера для размещения сайта в будущем.

Что это такое

Apache – это свободное программное обеспечение для размещения веб-сервера. Он хорошо показывает себя в работе с масштабными проектами, поэтому заслуженно считается одним из самых популярных веб-серверов. Кроме того, Apache очень гибок в плане настройки, что даёт возможность реализовать все особенности размещаемого веб-ресурса.

История создания

Apache HTTP Server был выпущен в 1995 году разработчиком Робертом Маккулом из Университета штата Иллинойс (UIUC). Продукт возник как доработанная версия другого HTTP-клиента – NCSA HTTPd 1.3, созданного Робертом ранее.

Основой для модификации стали многочисленные «патчи» или программные «заплатки» для NCSA. Именно отсюда (а не от индейского племени апачей) изначально и происходит название Apache. Оно расшифровывается как «a patchy server» или «сервер с патчами».

Что такое Apache - история

Разработкой и поддержкой продукта с 1999 года занимается организация Apache Software Foundation (ASF) – сообщество экспертов-энтузиастов со всего мира. Этим же некоммерческим фондом была создана официальная лицензия ПО – Apache License.

В 2000 году ASF представило новую версию Apache 2.0 с полностью переработанной архитектурой, свободной от кода NCSA. С этого момента веб-сервер развивается по двум основным веткам – 1.х и 2.х.

Как устроен Apache

Что такое Apache - устройство

Архитектура

Apache состоит из ядра и динамической модульной системы. Параметры системы изменяются с помощью конфигурационных файлов.

Ядро

Ядро Apache разработано Apache Software Foundation на языке C. Основные функции — обработка конфигурационных файлов, протокол HTTP/HTTPS и загрузка модулей. Ядро может работать без модулей, но будет иметь ограниченный функционал.

Модульная система

Модуль – отдельный файл, подключение которого расширяет изначальный функционал ядра. Они могут включаться в состав ПО при первоначальной установке или подгружаться позже через изменение конфигурационного файла.

Большинство из них отвечает за определенный аспект обработки клиентского запроса – поддержку различных языков программирования, безопасность, кэширование, аутентификацию и т.д. Таким образом, большая задача разбивается на несколько фаз, каждую из которых решает отдельный, узкоспециализированный модуль.

Для Apache существует больше 500 модулей. Многие популярные веб-приложения сразу выпускаются в виде модуля к Apache. Например, ISPmanager и VDSmanager.

Конфигурация

Система конфигурации Apache работает на текстовых файлах с прописанными настройками. Она подразделяется на три условных уровня, для каждого из которых имеется свой конфигурационный файл:

  1. Уровень конфигурации сервера (файл httpd.conf) – основной конфигурационный файл. Действие распространяется на весь механизм веб-сервера.
  2. Уровень каталога (файл .htaccess) – дополнительный конфигурационный файл. Его директивы охватывают только каталог, где расположен файл, а также вложенные подкаталоги.
  3. Уровень виртуального хоста (файл httpd.conf> или extra/httpd-vhosts.conf).

Обычно конфигурационные файлы Apache находятся в папке «conf», а дополнительные конфигурационные файлы во вложенной в нее папке «extra». Внести изменения можно как через редактирование самого файла, так и через командную строку.

Виртуальные хосты

Веб-хост – это компонент сервера, отвечающий за обслуживание одного размещенного на нем объекта (сайта, виртуального сервера). Система виртуальных хостов Apache позволяет одновременно запускать несколько проектов с одного IP-адреса.

В Apache можно установить настройки модуля и ядра, а также вводить лимиты на потребление серверных ресурсов (трафик, RAM, CPU) для каждого виртуального хоста в отдельности. Это технологическая основа всего механизма веб-хостинга.

Достоинства и недостатки Apache

Плюсы

  • Доступность. Это программное обеспечение с открытым исходным кодом. Значит, его может бесплатно использовать или модифицировать любой желающий. Разработчики по всему миру создают конфигурации и модули веб-сервера для своих специфических нужд. По этой же причине Apache регулярно получает полезные дополнения, расширяющие его базовый функционал.
  • Гибкость настройки. Apache использует несколько конфигурационных файлов для управления веб-сервером. Это позволяет настроить ПО под узконаправленные задачи.
  • Функциональность. У Apache динамическая модульная структура. Можно быстро подключать дополнительный функционал в виде скачиваемых модулей, даже без обращения к внешним источникам. Это позволяет решать целый комплекс важнейших задач в области безопасности, кэширования, редактирования URL, распределения нагрузки. Благодаря гибридным модулям MPM, Apache может одинаково успешно обслуживать статический и динамический контент. Есть возможность оперативно отключать ненужные модули и ускорять работу веб-сервера
  • Кроссплатформенность. Apache работает как на Windows, так и на всех Unix-подобных системах. Администрирование веб-сервером не имеет серьёзных отличий на разных ОС. Индивидуален только процесс установки и расположение директорий с файлами программы.
  • Совместимость. Apache работает на базе скриптовых или веб-ориентированных языков (PHP, Python, Tcl, Ruby, Perl, ASP), что делает его совместимым с самым широким спектром баз данных и серверного ПО. Многие веб-приложения и инструменты сразу выходят со средствами запуска из-под Apache в виде PHP-модуля. Веб-сервер, поддерживает технологии FastCGI и CGI, позволяющие пользоваться программными продуктами на объектно-ориентированных языках Java, sh, C, C++.
  • Масштабируемость. Подходит для веб-ресурсов любого масштаба. Apache хорошо работает как на одностраничном сайте (лендинге), так и на многостраничном сайте с ежедневной аудиторией в десятки тысяч посетителей.
  • Поддержка пользователей. Apache удерживает первенство популярности среди веб-серверов с 1996 года. За прошедшее время для него создана обширнейшая база документации – как официальной, так и созданной сторонними разработчиками. Готовые, подробно описанные руководства можно найти практически на любой сценарий.

Что такое Apache - плюсы и минусы

Минусы

  • Производительность. Скорость обработки запросов Apache несколько ниже, по сравнению со своими конкурентами. Гибкость веб-сервера в некоторых случаях вредит производительности. Например, Apache приходится каждый раз считывать несколько конфигурационных файлов на сервере, затрачивая системные ресурсы и время. Но этот и многие другие факторы можно исправить, отключив ненужные опции. Правда в таком случае функциональность Apache не будет сильно отличаться от других веб-серверов.
  • Сложная конфигурация повышает уязвимость. Возможность подключать модули в Apache это не всегда преимущество. Чем больше модулей, тем сложнее становятся настройки. Соответственно, больше шансов допустить критические пробелы в контуре безопасности.
  • Синтаксис конфигов.. В файлах с параметрами программы используются разнообразные переменные, поэтому настройка и управление веб-сервером может показаться сложной новичкам. Упростить администрирование Apache можно с помощью бесплатного инструмента Apache GUI.
  • Излишний функционал. Даже без дополнительных модулей Apache предоставляет пользователям массу возможностей. Правда, большинство использует лишь небольшую часть базового функционала приложения. Поэтому часто после установки приходится тратить время на отключение «лишних» модулей.

Альтернативы Apache

NGINX

Что такое Apache - nginx

Nginx (Engine-X, «энжинкс») — второе по популярности веб-серверное приложение и главный конкурент Apache. Было выпущено в 2004 году под открытой лицензией BSD. Изначально приложение создавалось для решения проблемы масштабирования, известной как «10 тысяч соединений» (С10к). Это значит, что до Nginx веб-сервер не был способен одновременно обрабатывать пользовательские запросы более чем с 10 000 подключений.

У этого веб-сервера асинхронная событийно-ориентированная архитектура (event-driven), которая позволяет добиваться быстрого масштабирования даже при минимальных ресурсах. Вместо того, чтобы создавать новый процесс для каждого пользовательского запроса, Nginx обрабатывает множество соединений в едином потоке.

Nginx отлично подходит для веб-проектов с высокой посещаемостью. Однако веб-сервер не может самостоятельно работать с динамическим контентом. Поэтому его чаще используют для статических веб-сайтов или например, в связке с PHP-FPM или Apache HTTP Server как прокси-сервер.

Lighttpd

Что такое Apache - Lighttpd

Веб-сервер Lighttpd (произносится «лайти») — кроссплатформенное программное обеспечение на языке С. Выпущено в 2003 году под лицензией BSD. «Лайти» работает на операционных системах Windows и семейства Unix/Linux. Приложение поддерживает технологии FastCGI, SCGI, HTTP proxy, Auth, перезаписи URL и AJP (с версии 1.5).

Как и Nginx, изначально «Лайти» создавалось для решения проблемы «С10к». Неудивительно, что его специализация — веб-проекты с большой посещаемостью. В числе компаний, использующих Lighttpd, такие гиганты, как Google, Википедия, Яндекс и Ubuntu.

Microsoft IIS

Что такое Apache - microsoft-IIS

Internet Information Services (IIS) — набор сервисов для создания веб-сервера от компании Microsoft. Распространяется в комплекте с операционными системами Windows NT как дополнительно устанавливаемый компонент. Веб-сервер поддерживает технологии CGI, FastCGI, ISAPI и SSI.

Главная сила IIS – в глубокой интеграции и поддержке продуктов Microsoft. Его часто выбирают те, чьи ресурсы работают на движке ASP.NET и используют скриптовый язык ASPX. Главный недостаток – жесткая привязка к операционной системе Windows и отсутствие версий для Unix/Linux.

Tomcat

Что такое Apache - Apache-Tomcat

Apache Tomcat — это контейнер сервлетов, который обрабатывает спецификации Java. Например, Java Servlet, Java Server Pages (JSP), Java EL и WebSocket. Продукт был разработан фондом Apache Software Foundation на основе открытой лицензии Apache License 2.0. Tomcat используется как в качестве самостоятельного веб-сервера, так и в связке с Apache HTTP Server.

Приложение написано на языке Java и способно автоматически загружать Java-библиотеки. Его основная специализация — веб-проекты с динамическим содержимым. Но у Apache Tomcat хуже возможности для настройки, что сужает его сферу применения. Например, для запуска WordPress эффективнее использовать обычный HTTP-сервер Apache.

Заключение

Сервер Apache – универсальный инструмент для быстрого и безопасного запуска интернет-проектов разного масштаба. Веб-сервер совместим с большинством существующих операционных систем, программных продуктов и языков разработки.
Система конфигурационных файлов дает «Апач» гибкие возможности для настройки, а динамически подгружаемые модули расширяют функционал до максимума. Особенно эффективно использовать веб-сервер Apache в связке с ближайшим аналогом – Nginx.

Для работы с «Апач» пользователю нужен определенный уровень IT грамотности. Желательно знать основы программирования и веб-администрирования. Но процесс сильно упрощает активное сообщество поддержки и отлично развитая база официальной документации.

Раскройте все возможности и преимущества веб-сервера Apache с надёжным хостингом от Eternalhost!

Apache Software Foundation

Apache Software Foundation (ASF) — организация-фонд, способствующая развитию проектов программного обеспечения Apache, к которым относится среди прочего веб-сервер Apache. ASF была сформирована в 1999 году из Apache Group в Делавэре, США.

Сообщество ASF состоит из разработчиков-энтузиастов, живущих в разных странах мира и участвующих в различных Open Source проектах.

Отличительные черты проектов Apache — это совместная разработка кода и открытая, прагматичная лицензия — Apache Software License.

Руководит каждым из проектов команда избранных экспертов, которые сами принимают активное участие в процессе разработки.

Членами организации могут стать только те люди, которые внесли значительный вклад в развитие/разработку проектов.

Основные задачи фонда — это юридическая защита участников проекта и защита марки «Apache». ASF была разработана лицензия Apache, широко используемая в рамках других проектов.

Среди платиновых (более 100 000 долл. в год) спонсоров проекта — Google и Yahoo!. [1] В июле 2008 года к ним присоединилась Microsoft. [2]

ASF ежегодно проводит конференции ApacheCon.

Apache Software Foundation: 20 лет на страже Open Source

Apache Software Foundation (ASF) исполнилось 20 лет, и он продолжает принимать участие в разработке и продвижении ПО с открытым исходным кодом, которое является фундаментальной частью инфраструктуры Интернета, пишет портал eWeek.

За последние годы Open Source приобрел значительное влияние, превратившись из продукта для маргиналов, как это было когда-то, в стандартное ПО для большей части современной ИТ-инфраструктуры, включая облачную. Двадцать лет назад ASF был основан группой участников, которые задались целью поспособствовать усилению роли открытого ПО. По данным фонда, в настоящее время он предоставляет бесплатное ПО по модели Open Source на сумму более 20 млрд. долл. C момента основания ASF число развиваемых в рамках Apache проектов превысило 350 (из которых 52 в инкубаторе), они охватывают такие области, как машинное обучение, большие данные, управление сборкой ПО, облачные системы, управление контентом, DevOps, IoT, разработка мобильных приложений, серверные системы и веб-фреймворки.

«То, что появилось задолго до того, как появился сам термин „Open Source“, превратилось в опору для поддержки сотен проектов, тысяч участников и миллионов пользователей. Несмотря на то, что ПО и технологии пережили за последние двадцать лет много изменений, взятый ASF курс продемонстрировал невероятную устойчивость», — сказал председатель ASF Фил Стейц.

Вот некоторые лишь проекты фонда, которые оказали ключевое воздействие на рынок.

1. HTTP-сервер Apache — лидер рынка

С 1999 г. HTTP-веб-сервер Apache (обычно его называют просто Apache) был и остается основным проектом ASF. Он заслужил репутацию лучшего HTTP-веб-сервера в Интернете, но в последние годы сталкивается с растущей конкуренцией со стороны Nginx. По данным исследовательской компании Netcraft, Apache по-прежнему является самым популярным, обеспечивая поддержку 31% активных сайтов в Интернете.

2. Apache является прибежищем для Hadoop — проекта для Big Data

За последние годы в мире ИТ произошло немало изменений, связанных с появлением новых технологий, и ASF сыграл ключевую роль в их поддержке. Так, революция в области больших данных по большей части была спровоцирована именно Open Source-проектом Apache Hadoop. В современном виде Hadoop представляет из себя совокупность взаимосвязанных проектов, которые помогают оперировать большими данными и получать достоверные результаты для анализа.

3. Apache Kafka проглатывает любые потоки данных

Одной из ключевых потребностей современных ИТ является возможность потоковой передачи данных в реальном времени. Именно для этих целей предназначена платформа Apache Kafka, которая может передавать потоковые данные об истории посещений веб-сайтов, финансовые транзакции и журналы приложений в приложения, разработанные на платформах Apache Spark Streaming, Apache Storm или Apache Samza. Kafka была разработана LinkedIn и в настоящее время использует модель развития с привлечением многих заинтересованных сторон. По данным ASF, платформа применяется многими крупными компаниями, включая Airbnb, LinkedIn, MailChimp, Netflix, New York Times, Oracle, PayPal, Pinterest, Spotify, Twitter и Uber.

4. Поисковый сервис Solr и открытая библиотека Lucene

Несмотря на то, что Google является крупнейшей публичной поисковой системой в мире, проекты Apache Lucene и Solr стали поисковым стандартом для корпоративных данных и приложений. Lucene — свободная библиотека для высокопроизводительного полнотекстового поиска, в то время как ассоциированный проект Solr предоставляет масштабируемые функции для поиска. Эти службы применяются многими крупными компаниями, включая Best Buy, eBay, Ticketmaster, Disney и Travelocity.

5. Модель лицензирования Apache

Проекты с открытым кодом переходят под крыло ASF, поскольку их привлекает гибкость организационной модели фонда и предоставляемая им возможность для совместной разработки. Однако помимо ассоциированных с ASF проектов существуют тысячи других проектов, которые не являются его членами, но, тем не менее, выпускают свои продукты под лицензией Apache.

Лицензия Apache — открытая пермиссивная (разрешительная) лицензия, которая дает право доступа к открытой кодовой базе и поощряет внесение в нее посильного вклада независимых контрибуторов. Основное преимущество лицензии Apache заключается не только в ее открытости, но также в том, что она позволяет поставщикам наслаивать поверх открытой кодовой базы целевой код для разработки (и продажи) корпоративных решений.

6. «Путь Apache»

Как уже говорилось, ASF курирует сотни Open Source-проектов, выдает лицензии на базовый код, что помогло заметно расширить влияние Open Source на рынке, но помимо этого у него имеется идейная составляющая — «путь Apache». Apache Way — это подход к разработке открытого кода, основанный на достижении консенсуса. Фонд также занимается поощрением авторитетных контрибуторов. Основополагающим компонентом «пути Apache» является открытость коммуникаций.

По прошествии стольких лет ASF удалось создать нейтральную, не зависящую от отдельных производителей и заслуживающую доверия площадку для разработки открытого ПО, развиваемого силами сообщества. Разработку курируют более 7000 контрибуторов. Кодовая база всех проектов Apache насчитывает более 200 млн. строк. За 20 лет в кодовые базы проектов было принято 3 млн. изменений, охватывающих более миллиарда строк кода.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *