Apache og Nginx. Tengt með einni keðju

Hvernig Apache og Nginx samsetningin er útfærð í Timeweb

Fyrir mörg fyrirtæki er Nginx + Apache + PHP mjög dæmigerð og algeng samsetning og Timeweb er engin undantekning. Hins vegar getur verið áhugavert og gagnlegt að skilja nákvæmlega hvernig það er útfært.

Apache og Nginx. Tengt með einni keðju

Notkun slíkrar samsetningar ræðst að sjálfsögðu af þörfum viðskiptavina okkar. Bæði Nginx og Apache gegna sérstöku hlutverki, hver leysir ákveðið vandamál.

grunnstillingar Apache eru gerðar í stillingarskrám Apache sjálfrar og stillingar fyrir vefsetur viðskiptavina eiga sér stað í gegnum .htaccess skrá. .htaccess er stillingarskrá þar sem viðskiptavinurinn getur sjálfstætt stillt reglur og hegðun vefþjónsins. Þessi stilling á sérstaklega við um síðuna hans. Til dæmis, þökk sé Apache virkninni, geta notendur breytt rekstrarham innan sömu PHP útgáfu úr mod_php í mod_cgi; þú getur sett upp tilvísanir, hagræðingu fyrir SEO, þægilegan vefslóð, nokkur takmörk fyrir PHP.

Nginx notaður sem proxy-þjónn til að beina umferð til Apache og sem vefþjónn til að þjóna kyrrstæðu efni. Við höfum einnig þróað öryggiseiningar fyrir Nginx sem gera okkur kleift að vernda gögn notenda okkar, til dæmis til að aðgreina aðgangsrétt.

Ímyndum okkur að notandi heimsæki vefsíðu viðskiptavinar okkar. Í fyrsta lagi kemst notandinn í Nginx, sem þjónar kyrrstæðu efni. Það gerist samstundis. Síðan, þegar kemur að því að hlaða PHP, sendir Nginx beiðnina áfram til Apache. Og Apache, ásamt PHP, býr nú þegar til kraftmikið efni.

Eiginleikar Apache & Nginx búntsins í Timeweb

Sýndarhýsingin okkar útfærir 2 helstu rekstrarkerfi fyrir Apache og Nginx: Sameiginlegt og hollt.

Sameiginlegt kerfi

Þetta kerfi er notað fyrir flesta notendur. Það einkennist af einfaldleika og auðlindastyrk: Sameiginlega kerfið notar færri auðlindir, þess vegna er gjaldskrá þess ódýrari. Samkvæmt þessu kerfi keyrir þjónninn einn Nginx, sem gerir honum kleift að þjóna öllum notendabeiðnum og nokkrum tilfellum af Apache.

Sameiginlega kerfið hefur verið að batna í langan tíma: smám saman leiðréttum við gallana. Þægilega er hægt að gera það án þess að þurfa að breyta frumkóðanum.

Apache og Nginx. Tengt með einni keðju
Sameiginlegt kerfi

Sérstakt kerfi

Hollur krefst meira fjármagns, svo gjaldskrá þess er dýrari fyrir viðskiptavini. Í sérstöku kerfinu fær hver viðskiptavinur sinn eigin Apache. Aðföng hér eru frátekin fyrir viðskiptavininn, þeim er eingöngu úthlutað. Hvernig það virkar: Það eru nokkrar útgáfur af PHP á þjóninum. Við styðjum útgáfur 5.3, 5.4, 5.6, 7.1, 7.2, 7.3, 7.4. Svo, fyrir hverja útgáfu af PHP er eigin Apache hleypt af stokkunum.

Apache og Nginx. Tengt með einni keðju
Sérstakt kerfi

Öruggt svæði. Setja upp svæði í Nginx

Áður, fyrir Nginx, notuðum við mörg samnýtt minnissvæði (svæði) - ein netþjónsblokk á hvert lén. Þessi uppsetning krefst mikils fjármagns, þar sem sérstakt svæði er búið til fyrir hverja síðu. Hins vegar, í Nginx stillingunum, eru flestar síður af sömu gerð, svo hægt er að setja þær á einu svæði þökk sé notkun kortaleiðbeininga í einingunni ngx_http_map_module, sem gerir þér kleift að tilgreina samsvörun. Til dæmis höfum við svæðissniðmát þar sem við verðum að gefa upp breytur: slóð á síðuna, PHP útgáfa, notandi. Þannig var endurlestri Nginx stillingar, það er endurhleðslu, flýtt.

Þessi uppsetning sparaði vinnsluminni til muna og flýtti Nginx.

Endurhlaða mun ekki virka!

Í samnýttu kerfinu losnuðum við við þörfina á að endurhlaða Apache þegar við breyttum vefsíðustillingum. Áður fyrr, þegar einn viðskiptavinur vildi bæta við léni eða breyta PHP útgáfunni, var nauðsynlegt að endurhlaða Apache, sem leiddi til tafa á svörum og hafði neikvæð áhrif á afköst vefsvæðisins.

Við losnuðum við endurhleðslu með því að búa til kraftmiklar stillingar. Þökk sé mpm-itk (Apache mát), hvert ferli keyrir sem sérstakur notandi, sem eykur öryggisstigið. Þessi aðferð gerir þér kleift að flytja gögn um notandann og document_root hans frá Nginx til Apache2. Þannig inniheldur Apache ekki síðustillingar, það tekur á móti þeim á kraftmikinn hátt og ekki er lengur þörf á endurhleðslu.

Apache og Nginx. Tengt með einni keðju
Samnýtt skema uppsetning

Hvað með Docker?

Mörg fyrirtæki hafa farið yfir í gámakerfi. Timeweb er nú að skoða möguleika á slíkum umskiptum. Auðvitað eru kostir og gallar við hverja ákvörðun.

Ásamt óneitanlega kostum veitir gámakerfið notandanum færri úrræði. Í Timeweb, þökk sé lýst hýsingarkerfi, hefur notandinn engar takmarkanir á vinnsluminni. Það fær meira fjármagn en í gámnum. Að auki gæti notandinn verið með fleiri Apache einingar hlaðnar.

Timeweb knýr um 500 vefsíður. Við tökum mikla ábyrgð og gerum ekki tafarlausar, óréttmætar breytingar á flóknum byggingarlist. Apache og Nginx samsetningin er áreiðanleg og tímaprófuð. Við reynum aftur á móti að ná hámarksframmistöðu með einstökum stillingum.

Fyrir hágæða og hraðvirkan rekstur fjölda vefsvæða þarftu að nota sniðmát og kraftmikla uppsetningu á Apache og Nginx. Það gerir þér kleift að stjórna fjölda svipaðra netþjóna á auðveldan og fljótlegan hátt.

Heimild: www.habr.com

Bæta við athugasemd