„Nginx Vs Apache“, kuris yra geresnis cPanel Hostingas?
Vienas iš dažniausiai užduodamų klausimų iš mūsų prieglobos klientų yra: kuo skiriasi „Nginx“ ir „Apache“? Abu yra atvirojo kodo žiniatinklio serveriai, kurie valdo maždaug 75 % visų interneto svetainių, tačiau srautą jie tvarko iš esmės skirtingais būdais.
Žiniatinklio prieglobos srityje dirbame nuo 2011 m. ir valdome tūkstančius svetainių. VPS ir dedikuotas serveris klientų. Kai kurie teikia asmenines paslaugas blogkiti vykdo didelio srauto programas. Po daugelio metų abiejų serverių konfigūravimo pateikiame savo suskirstymą Nginx ir Apache ir kurį turėtumėte pasirinkti.
Nginx ir Apache: greitas palyginimas
Kas yra Apache?
„Apache“ HTTP serveris yra plačiausiai naudojamas žiniatinklio serveris nuo 1995 m. Jis naudoja procesais pagrįsta architektūra, o tai reiškia, kad kiekvienam gaunamam ryšiui sukuriamas naujas siūlas arba procesas. Šis metodas yra paprastas ir gerai veikia esant vidutiniam srautui, tačiau jis sunaudoja daugiau atminties, didėjant ryšių skaičiui.
Didžiausias „Apache“ privalumas yra jo .htaccess failų palaikymasTai leidžia konfigūruoti pagal katalogą neperkraunant serverio, todėl kiekviena bendro naudojimo prieglobos įmonė naudoja „Apache“. Vartotojai gali nustatyti URL perrašymo, peradresavimo, autentifikavimo ir talpyklos taisykles iš savo prieglobos valdymo skydelio, nereikalaudami root prieigos.
„Apache“ taip pat turi integruotą programinę įrangą cPanel ir WHM, populiariausios serverių valdymo panelės prieglobos pramonėje. Todėl tai yra numatytasis pasirinkimas bet kuriai prieglobos įmonei, naudojančiai cPanel.
Kas yra Nginx?
„Nginx“ (tariama „engine-x“) 2004 m. sukūrė Igoris Sysojevas, norėdamas išspręsti C10K problemą, kuri apima 10 000 vienu metu veikiančių jungčių apdorojimą viename serveryje. Jis naudoja įvykių valdoma, asinchroninė architektūra kuris gali apdoroti tūkstančius vienu metu vykstančių jungčių su minimaliu atminties naudojimu.
Kai „Apache“ sukuria naują giją kiekvienam prisijungimui, „Nginx“ naudoja vieną darbinį procesą, kuris apdoroja kelis prisijungimus per įvykių ciklą. Štai kodėl „Nginx“ sunaudoja žymiai mažiau atminties esant dideliam apkrovimui ir aptarnauja statinius failus daug greičiau nei „Apache“.
„Nginx“ taip pat plačiai naudojamas kaip atvirkštinis tarpinis serveris ir apkrovos balansavimo įrenginys priešais programų serverius. Daugelyje didelio masto diegimų naudojama „Nginx“, kad būtų galima tvarkyti gaunamą srautą ir persiųsti užklausas į serverio paslaugas, tokias kaip „Node.js“, „Python“ arba PHP-FPM.
Kompromisas yra tas, kad „Nginx“ nepalaiko .htaccess failų. Visa konfigūracija turi būti atliekama pagrindiniuose serverio konfigūracijos failuose, kuriems reikalinga root prieiga. Dėl to jis mažiau tinka bendram talpinimui, kur vartotojai turi patys tvarkyti URL perrašymus ir peradresavimus.
„LiteSpeed“: geriausia iš abiejų pasaulių
Kol tęsiasi diskusijos apie „Nginx“ ir „Apache“, yra trečias variantas, kurį pasirinko daugelis prieglobos įmonių: „LiteSpeed“ žiniatinklio serveris (LSWS)„LiteSpeed“ sujungia „Apache“ suderinamumą su „Nginx“ lygio našumu.
„LiteSpeed“ automatiškai nuskaito.htaccess failus, integruojasi su cPanel iš karto išpakuojamas ir pasižymi žymiai geresniu našumu nei „Apache“. Tai yra „Apache“ pakaitalas, o tai reiškia, kad galite pereiti nuo „Apache“ prie „LiteSpeed“ nekeisdami jokių konfigūracijos failų.
Mūsų GoogieHost Serveriai veikia su „LiteSpeed“, kad galėtų tvarkyti tūkstančius paskyrų, naudojančių „Xeon E5“ 8 branduolių procesorius. Mes ne vieninteliai, kurie tai naudoja. Žinomi prekių ženklai, tokie kaip „LiquidWeb“, „KnownHost“, InterServer, o daugelis kitų perėjo prie „LiteSpeed“, kad pagerintų našumą.
Vienintelis trūkumas yra tas, kad „LiteSpeed“ reikalinga komercinė licencija. Biudžetiniai prieglobos paslaugų teikėjai, tokie kaip „GoDaddy“ ir „iPage“, nesiūlo „LiteSpeed“, nes jiems trūksta infrastruktūros, kad pateisintų licencijavimo kainą.
„Nginx“ ir „Apache“ palyginimas cPanel
cPanel oficialiai nepalaiko „Nginx“ su iš anksto sukurtomis konfigūracijomis. Yra trečiųjų šalių modulių, leidžiančių įdiegti ir konfigūruoti „Nginx“ įrenginyje. cPanel/WHM serverį, bet oficialios pagalbos iš jo negausite cPanel dėl bet kokių su „Nginx“ susijusių problemų.
Du populiarūs nemokami Nginx pridėjimo variantai cPanel:
- Engintron: Lengva integruoti. Prideda „Nginx“ kaip atvirkštinį tarpinį serverį prieš „Apache“. Nereikia gilių „Linux“ žinių.
- NginxCP: Dar vienas nemokamas modulis, kuris gali pagerinti serverio našumą iki 5 kartų, atlikus keletą konfigūracijos pakeitimų.
Ir „Engintron“, ir „NginxCP“ yra nemokami atvirojo kodo moduliai be oficialaus palaikymo. Jei jums reikia palaikomo sprendimo su cPanelRekomenduojamas pasirinkimas yra „LiteSpeed“. „Nginx“ pagrindu veikiančius VPS serverius galite įsigyti iš YouStable už prieinamą kainą.
Kada rinktis „Apache“ ir „Nginx“
Tinkamas pasirinkimas priklauso nuo konkretaus atvejo:
Rinkitės „Apache“, kai:
- Jūs valdote bendro naudojimo prieglobos įmonę su cPanel
- Jūsų vartotojams reikia .htaccess palaikymo URL perrašymui ir peradresavimui
- Keli projektai talpinami viename serveryje, kur kiekvienam reikalinga nepriklausoma konfigūracija.
- Naudojate „Apache“ skirtus modulius, kurie neturi atitikmens „Nginx“
Rinkitės „Nginx“, kai:
- Jums reikia apdoroti didelį vienalaikį srautą ribotoje įrangoje.
- Pateikiate daugiausia statinį turinį (vaizdus, CSS, „JavaScript“)
- Jums reikia atvirkštinio tarpinio serverio arba apkrovos balansavimo įrenginio prieš programų serverius.
- Turite root prieigą ir Linux patirties, kad galėtumėte tiesiogiai valdyti serverio konfigūracijas.
Mūsų patirtis valdant prieglobos infrastruktūrą matė, kad „Digital Ocean“ 1 GB talpos „Droplet“ su „Nginx“ apdoroja daugiau nei 1,000 vienu metu naudojamų vartotojų dinaminiame turinyje, o tos pačios specifikacijos VPS su „Apache“ pradeda lėtėti po 100 vienu metu veikiančių vartotojų.
Jei nusprendėte naudoti „Apache“ ir norite jį diegti VPS serveryje nuo nulio, klasikinis pasirinkimas yra LAMP steko nustatymas – kur „Apache“ veikia kaip pagrindinis žiniatinklio serveris kartu su „MySQL“ ir PHP.
Ši sąranka idealiai tinka „WordPress“, „Drupal“ ir daugumai PHP pagrindu sukurtų programų. Parengėme praktinį, patikrintą vadovą, kaip tai padaryti. Kaip sukonfigūruoti LAMP steko VPS serveryje su kiekviena komanda, patikrinta Ubuntu 22.04 versijoje – nuo Apache diegimo iki SSL konfigūravimo naudojant „Let's Encrypt“.
„Nginx“ ir „Apache“ privalumai ir trūkumai
apache
Argumentai "už"
- „Native.htaccess“ palaikymas konfigūracijai pagal katalogus
- Pilnas cPanel/WHM integracija iš karto
- Didžiulė bendruomenė ir daugiau nei 25 metų dokumentacija
- Dinaminis modulių įkėlimas be pakartotinio kompiliavimo
- Geriau tinka bendro naudojimo prieglobos aplinkoms
Trūkumai
- Didesnis atminties sunaudojimas esant dideliam apkrovimui
- Lėtesnis, kai statinis failų aptarnavimas vyksta dideliu lygiagretumu
- Proceso pagal jungtį modelis nėra gerai pritaikomas masteliui
- .htaccess analizavimas padidina kiekvienos užklausos apkrovą
nginx
Argumentai "už"
- Įvykiais pagrįsta architektūra apdoroja tūkstančius vienu metu vykstančių jungčių
- Labai mažas atminties kiekis
- Ypač greitas statinių failų aptarnavimas
- Puikios atvirkštinio tarpinio serverio ir apkrovos balansavimo galimybės
- Naudoja „Netflix“, „Airbnb“ ir kitos didelio srauto svetainės
Trūkumai
- Nėra .htaccess palaikymo, visai konfigūracijai reikalinga root prieiga
- Nepalaikoma pagal numatytuosius nustatymus cPanel/WHM
- Moduliai turi būti sukompiliuoti, jų negalima įkelti dinamiškai
- Staigesnė mokymosi kreivė tradiciniams prieglobos administratoriams
DUK – „Nginx“ ir „Apache“
Ar „Nginx“ yra greitesnis nei „Apache“?
Taip, „Nginx“ yra žymiai greitesnis nei „Apache“ teikiant statinį turinį ir tvarkant daug lygiagrečių jungčių. Dinaminio turinio, apdorojamo naudojant PHP-FPM, atveju našumo skirtumas yra mažesnis, tačiau „Nginx“ vis tiek turi pranašumą dėl mažesnio atminties kiekio.
Ar galime naudoti „Nginx“ ir „Apache“ kartu?
Taip. Įprasta konfigūracija yra naudoti „Nginx“ kaip atvirkštinį tarpinį serverį prieš „Apache“. „Nginx“ tvarko statinius failus ir SSL nutraukimą, o „Apache“ apdoroja dinamines PHP užklausas. Tai suteikia „Nginx“ našumo pranašumus ir „Apache“ suderinamumą su .htaccess.
Kas geriau tinka „WordPress“: „Nginx“ ar „Apache“?
Abu gerai veikia su „WordPress“. „Apache“ lengviau nustatyti, nes „WordPress“ pagal numatytuosius nustatymus nuolatinėms nuorodoms apima failą .htaccess. „Nginx“ reikia rankiniu būdu konfigūruoti perrašymo taisykles. „WordPress“ našumasGeriausius rezultatus duoda „Nginx“ kartu su PHP-FPM ir talpyklos įskiepiu.
Kodėl dauguma bendro naudojimo prieglobos įmonių naudoja „Apache“?
Bendrajam talpinimui reikalingas .htaccess palaikymas, kad individualūs vartotojai galėtų konfigūruoti savo URL perrašymo, peradresavimo ir talpyklos taisykles neturėdami root prieigos. „Apache“ palaiko .htaccess iš esmės. „Nginx“ to nedaro. Štai kodėl praktiškai kiekvienas cPanelpagrįstas serveris naudoja „Apache“ arba „LiteSpeed“.
Ar „LiteSpeed“ geresnis nei „Nginx“ ir „Apache“?
„LiteSpeed“ sujungia geriausias abiejų pasaulių savybes. Jis skaito.htaccess failus kaip „Apache“, integruojasi su cPanel natyviai ir užtikrina našumą, panašų į „Nginx“ arba geresnį. Vienintelis trūkumas yra komercinės licencijos kaina. Daugumai prieglobos įmonių „LiteSpeed“ yra geriausias pasirinkimas, jei biudžetas leidžia.
Galimas nemokamas amžinas planas. Kredito kortelės nereikia.
Galutinis verdiktas: kurį žiniatinklio serverį turėtumėte pasirinkti?
Po daugelio metų patirties su visais trimis variantais, mūsų atsakymas yra toks LiteSpeedTai suteikia „Apache“ suderinamumą su „Nginx“ lygio našumu ir yra natūraliai integruojama su cPanelJei jūsų talpinimo biudžetas leidžia įsigyti „LiteSpeed“ licenciją, ji neabejotinai yra geriausias pasirinkimas.
Jei „LiteSpeed“ nėra pasirinkimas ir turite tvirtų „Linux“ žinių, „Nginx“ yra geriausias pasirinkimas, jei reikia našumoJis geriau tvarko didelį srautą nei „Apache“ su identiška technine įranga ir naudoja mažiau atminties.
Dėl bendras talpinimas su cPanel kur vartotojams reikia .htaccess palaikymo, „Apache“ išlieka praktišku pasirinkimuTai veikia iš karto su kiekvienu „WordPress“ diegimu, kiekvienu cPanel sąranka ir kiekviena bendro naudojimo prieglobos aplinka.
Komentaruose praneškite mums, kokį žiniatinklio serverį naudojate ir kodėl. Mes visada norime išgirsti apie realias konfigūracijas iš mūsų prieglobos bendruomenės.