https://blog.superhosting.bg/apache-v-2-4.html

Натиснете ENTER, за да видите резултатите или ESC за изход.

Блог на SuperHosting.BG

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

2016-10-31
Технологии
Apache v.2.4, web server, уеб сървър, Event MPM, Multi Processing Module, event-driven, mod_session, mod_allowmethods, mod_lua, mod_cache, mod_cgi, mod_include, mod_isapi, mod_rewrite, Event MPM, VPS, CloudVPS

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 планове, както и при SuperCloud VPS.

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

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

За момента Apache 2.4 не се поддържа на сървърите за споделен хостинг. Нашият екип извършва проверка и прави тестове за съвместимост на тази версия. Веднага след като имаме положителни резултати, версия 2.4 ще бъде приложена и на сървърите за споделен хостинг.

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

Специалист Техническа Поддръжка

Меган е нашият support гуру – може да отговори на всеки технически въпрос. Знае всичко за новите технологии. СуперСилата на Меган е, че може да обясни и най-сложните технологии на достъпен за всеки език.

500px270px
SuperHosting.BG

Препоръчани статии

Оставете коментар

4 Коментара към "С версия 2.4 Apache се нарежда сред най-бързите уеб сървъри"

Уведоми ме при
avatar

Кристиян Кацаров
Гост
21 февруари 2015 12:34

Наистина интересно! Някакви новини или резултатите от тестовете върху вашите сървъри? Горе долу кога може да го очакваме при споделените планове?

СуперХостинг.БГ
SH
23 февруари 2015 12:11

Здравейте,

Както споменахме, в момента нашият екип прави тестове за съвместимост на версия 2.4. Веднага след като имаме положителни резултати, тя ще бъде приложена и на сървърите за споделен хостинг.

Едуард Димитров
Гост
20 февруари 2015 9:56

Може ли малко въпроси: Защо след като версия 2.4. е пусната още през 2012г., чак сега започвате работа с нея? Не е имало стабилна версия ли? Коя е последната стабилна версия която препоръчвате: последната е 2.4.12, но може ли да се ползват и някои от по-старите?

СуперХостинг.БГ
SH
20 февруари 2015 15:51
Здравейте, При излизането на новa версия на софтуер, не е разумно веднага да се премине към неговото ползване в продукционна среда. При такива ситуации се препоръчва изчакване, докато се изчистят казусите, които са възникнали с излизането на новата версия. Tе обикновено са свързани със съвместимостта и сигурността. Една от последните уязвимости, засягаща само версия 2.4, излезе преди около 2 седмици. Много по-важно е софтуерът да работи стабилно с приемлива производителност. По-голямата скорост и по-малката ресурсоемкост са важни, но в никакъв случай не трябва да са за сметка на стабилноста и… още »
wpDiscuz