С версия 2.4 Apache се нарежда сред най-бързите уеб сървъри

Apache HTTP Server (или само Apache) е разработка на софтуерна фондация Apache от 1996г. Повече от 19 години той е безспорен лидер в класацията на уеб сървърите, следван от уеб сървъра на Microsoft IIS (Internet Information Services), който се използва само при Windows системи.

Предишната голяма версия Apache 2.2 излезе на пазара през 2005 година. След седем години на разработка и тестове (през 2012г.) е готова и пусната версия 2.4. Въпреки че са минали три години от пускането на тази основна стабилна версия, сериозните подобрения и интересните новости, представени в нея, заслужават да бъдат описани.

Подобренията в тази версия са продиктувани от тенденциите в развитието и усложняването на уеб приложенията. От Apache са погледнали и към двете отличителни характеристики на конкурентната технология на Nginx – „event-driven“ начин на работа и минимално потребление на памет.

В резултат на това, във версия 2.4 на Apache е добавена нова специфична функционалност – Event MPM (Multi Processing Module), която позволява на Apache да работи по начин, много подобен на Nginx. Новата версия 2.4 е многократно тествана и сравнявана с предишните версии на Apache. Разработчиците отчитат, че това е най-бързата версия от всички досега и въпреки повишените показатели, потреблението на памет е намалено спрямо версия 2.2.

С няколко думи Apache версия 2.4 има:

Подобрена производителност и намалена консумация на памет

Избор на няколко мулти-оперативни модула (MPM – Multi-Processing Modules) за ползване от Apache

Към уеб сървъра може да се добави повече от един мулти-оперативен модул. При компилиране се задават мулти-оперативните модули, които ще бъдат добавени. След това, при стартиране на уеб сървъра, може да се избере кой от тях да се ползва.

Преди версия 2.4 при компилиране на Apache се е избирал само един мулти-оперативен модул, който ще се ползва. Тези модули са основата за различните принципи на работа на уеб сървъра. Различават се от другите Apache модули по това, че по едно и също време може да има зареден само един мулти-оперативен модул. За UNIX-базирани системи има три такива модула – preforkworker и event.

Event – мулти-оперативен системен модул

Този системен модул, в статус „експериментален“, вече е напълно поддържан от уеб сървъра. Event модулът поддържа асинхронен начин за справяне с връзките към уеб сървъра, подобно на Nginx. С това той редуцира броя на създадените процеси, което се отразява в намалена консумация на памет. Ако се нуждаете от обработка на огромен брой едновременни заявки, тогава Event е точният мулти-оперативен модул (за разлика от Prefork модула, който е предназначен за супер бърза обработка на единична заявка/отговор).

Асинхронност

По-добра поддръжка на асинхронни входно-изходни операции, което се използва от мулти-оперативните модули (MPM).

KeepAliveTimeout в милисекунди

Keep-AliveTimeout е настройка към Keep-Alive, с която се задава след колко време (секунди) на неактивност да се прекрати връзката между уеб сървър и уеб браузър. Ако по нея не се получи нова HTTP заявка в рамките на зададения период, тя се прекратява. Вече е възможно за Keep-AliveTimeout да се зададе стойност в милисекунди.

Нови модули

mod_session

Позволява използването на статус за сесиите чрез cookie или база данни.

mod_allowmethods

Нов модул, с който лесно може да се ограничи поддръжката на определени HTTP методи от уеб сървъра (HTTP методите се използват в заявките на уеб браузъра за изпращане или поискване на информация от сървъра ). Например:

<Location />
AllowMethods GET POST OPTIONS
</Location>

mod_lua

С този модул към уеб сървъра се добавя поддръжка на скриптовия език Lua (от португалски – Луна). Lua е описан от разработчиците си като мощен, бърз, лек и лесен за интегриране скриптов език. Използван е в множество игри и приложения като World of WarcraftAngry Birds, MediaWiki, Adobe Photoshop Lightroom и други.

Подобрения по вече съществуващи модули

mod_cache

Модулът вече може да кешира HEAD заявки, да предоставя кеширани данни при съобщения от типа Error 5xx, както и директивите му да се задават за директория, вместо за целия сървър.

mod_cgi, mod_include, mod_isapi

Преобразуването на заглавните части (headers) на заявките в променливи на средата е по-стриктно. Това може да предотврати вероятни атаки от тип cross-site-scripting с инжектиране на заглавни части.

mod_rewrite

Добавени са флаговете [QSD] (Query String Discard) и [END] към RewriteRule за опростяване на правилата при по-често срещаните случаи на пренасочване.

Останалите подобрения можете да видите в описа с новостите на Apache 2.4.

Apache 2.4.x се поддържа при всички VPS планове.

Вижте как можете да инсталирате уеб сървъра Apache 2.4.х (с Event MPM) на VPS с CentOS 7.x.

Ако сте избрали VPS с контролен панел Webuzo също можете да инсталирате Apache 2.4.

🚀 Apache 2.4.x се поддържа на всички хостинг планове, WordPress хостинг услугата и Managed VPS сървърите, предлагани от СуперХостинг.БГ.

Интересно: Apache е базиран на уеб сървъра NCSA HTTPd, който е продължение на първия уеб сървър – CERN httpd.

Мадлена Методиева
Мадлена Методиева
Меган е част от СуперМаркетинг екипа. Мисията ѝ е старателно да попълва е-библиотеката на СуперХостинг.БГ с полезни и помощни статии.
0 0 votes
.
Абониране
Уведоми ме при
guest

4 Коментара
Inline Feedbacks
View all comments
Каква е разликата между домейн и уебсайт?

Каква е разликата между домейн и уебсайт? [Аудио]

2
Въпросът „Каква е разликата между домейн и уебсайт?” със сигурност влиза в топ 10 най-често срещани въпроси, когато решите да имате собствен сайт.
6 причини за съобщение Internal Server Error 500

6 причини за съобщение Internal Server Error 500 [Аудио]

11
Причините за генерирането на това съобщение може да са най-различни - некоректно изпълняващ се скрипт в сайта, некоректни права на файлове и директории и други
3 стъпки за органично бизнес онлайн присъствие

3 стъпки за органично бизнес онлайн присъствие [Аудио]

2
Под „органично присъствие“ имаме предвид всички начини, чрез които потребителите могат да разберат за Вашия бизнес, без да плащате за позициониране (реклама).