Tri najpopularnija web servera. W3Tech: udio nginxa u svijetu porastao je na trećinu, Apache je pao ispod polovine

Prije nekoliko mjeseci, u jednom od svojih prethodnih članaka, objavio sam zanimljive podatke iz comScorea, koji izračunava . Ako čitate taj članak, onda se vjerovatno sjećate da je Rusija postala lider u Evropi po broju korisnika interneta. Dakle, danas želim da vam pružim još neke zanimljive podatke, ali iz druge, ništa manje popularne kompanije - iz Netcrafta. Danas ćemo saznati koliko stranica postoji na Internetu, te koji su web serveri najpopularniji na svijetu.

Prema podacima Netcrafta, u januaru 2012. godine na Internetu je bilo čak 582,72 miliona sajtova - to je 27,23 miliona ili 4,9% više nego što je zabeleženo mesec dana ranije, odnosno u decembru 2010. godine. Kao što vidite, iz mjeseca u mjesec World Wide Web samo raste, zahvaljujući čemu informacioni prostor naše planete postaje sve veći i veći. I imajte na umu da ovo nije granica. Stručnjaci predviđaju da će se broj korisnika i broj sajtova na internetu nastaviti povećavati, a taj rast će biti značajan – barem u narednim godinama.

Takođe, Netcraftove kalkulacije pokazuju da web- Apache server i dalje je najpopularnija u svijetu – u januaru 2012. godine njen tržišni udio iznosio je čak 64,91%.

I tako, općenito, prva tri izgledaju ovako:

  • Apache - 64,91% (u decembru 2010. bio je 65,22%);
  • Microsoft - 14,46% (14,86%);
  • nginx - 9,63% (8,85%).

Ispostavilo se da trenutno samo ruski nginx web server povećava svoj tržišni udio, dok ga lideri gube, iako vrlo sporim tempom. Istovremeno, treba napomenuti jednu važnu tačku - ako se u statističkim izračunima uzmu u obzir samo aktivne Internet stranice, onda je do kraja januara 2012. nginx web server neznatno, ali je ipak nadmašio Microsoftov web server u ocjeni.

  • Apač - 57,93% (prije mjesec dana 58,21%);
  • nginx - 12,18% (11,61%);
  • Microsoft - 12,14% (12,31%);
  • Google - 7,90% (8,13%).

U ovom slučaju tržišni udio također raste samo za nginx web server, dok ostali polako gube svoje pozicije. Ali prije samo godinu dana, u januaru 2011., tržišni udio ruskog web servera iznosio je oko 8,23%, zbog čega je zauzeo tek četvrtu poziciju na rang listi, iza Microsofta (16,76%), pa čak i Gugla (11 90%). Dakle, vidimo ozbiljan porast popularnosti nginxa, a kako kažu njegovi predstavnici, taj rast je nepovratan – barem do kraja 2012. godine očekuju povećanje svog tržišnog udjela na 18%. Cilj je stvaran, pa im želimo puno sreće.

A da bi se ti ciljevi ostvarili, u ljeto 2011. godine stvorena je kompanija Nginx Inc., koja će sada obavljati sve radove na nginx projektu. Istovremeno, u jesen iste 2011. godine ova kompanija je dobila vrlo pristojnu investiciju (3,0 miliona dolara), pa se ne treba čuditi ako nginx web server do kraja 2012. ipak poveća svoj tržišni udio na očekivani 18%. Tako da možemo samo čekati i pratiti vijesti.

|

Aplikacije razvijene u Ruby-u se mogu implementirati opšti pristup koristeći jedan od mnogih web servera. Svaki web server je jedinstven i ima svoje prednosti, ali svi imaju jednu zajedničku stvar: bazirani su na Rack interfejsu.

Ovaj članak predlaže kratka recenzija popularne web servere za Ruby aplikacije, kao i upoznati vas sa specifikacijom Rack i međuvera.

Bilješka: Više detaljne informacije možete saznati o middleware-u.

Rack Interface

U današnjem svijetu razvoja web aplikacija, sposobnost miješanja i usklađivanja odgovarajućih web servera i drugih programa i tehnologija je neophodna. Zapravo, ovo je jedan od najtraženijih aspekata bilo kojeg programskog jezika ili okvira. Možda je najjednostavniji primjer ovdje razvoj, testiranje i proizvodna okruženja aplikacije – svi bi trebali biti različiti.

Da bi se to postiglo, 2007. je objavljen Rack, modularni interfejs za Ruby web servere. Danas ga koriste mnogi web serveri i okviri (Espresso, Mack, Ruby on Rails, Sinatra, itd.).

Unatoč konvencijama imenovanja i različitim objašnjenjima za različite programske jezike i domene, specifikacije za interoperabilnost aplikacija su vrlo slične (ako ne i identične). Iako za razliku od Python WSGI specifikacije koja je inspirirala Rack i mnoge druge specifikacije, Rack je također međuvera.

srednji softver Rack (dostupan kao dragulj) implementira specifikaciju Rack; dolazne HTTP zahtjeve dijeli u različite faze, zatim ih obrađuje u dijelove, nakon čega šalje odgovor web aplikaciji (kontroleru). Rack program se sastoji od dvije odvojene komponente: rukovaoca i adaptera, preko kojih se razmjenjuju podaci između web servera i aplikacija (okvirova).

Pregled web servera za Ruby

Sada možete razgovarati o najpopularnijim modernim web serverima, razumjeti njihove karakteristike i odabrati najprikladnije rješenje za svoju aplikaciju.

Bilješka: Web serveri su navedeni po abecednom redu.

Phusion Passenger: brzi web i aplikacijski server

Mnogi Ruby on Rails programeri preporučuju korištenje Passengera za podršku aplikacijama. To je zreo server s bogatim funkcijama koji ispunjava najzahtjevnije zahtjeve za implementaciju i olakšava instalaciju i pokretanje aplikacije. Eliminiše tradicionalnu arhitekturu proxy servera direktnom integracijom u Apache i Nginx web servere. Stoga se u Ruby (Rails) zajednici često naziva i mod_rails i mod_rack.

Passenger Features

Passenger pruža mogućnost rada sa više aplikacija koje se nalaze na istom serveru.

Takođe podržava rukovanje sporim klijentima. Passenger baferuje sve zahtjeve i odgovore kako bi spriječio napade koji začepljuju sistemske resurse.

Passenger web server je vrlo popularan i često se koristi u proizvodnom okruženju. Osim toga, ima aktivnu zajednicu u kojoj možete dobiti mnogo korisni savjeti i savjete. Kompanija za razvoj putnika nudi komercijalnu podršku.

Putnička verzija sa otvorenim izvorni kod pruža višeprocesni jednonitni način rada, a komercijalna verzija podržava jednonitne i višenitne načine rada.

Također, komercijalna verzija nudi mnoge "napredne" funkcije: paralelizam, višenitno, masovno postavljanje, upravljanje resursima, ograničavanje resursa itd.

Bilješka: Više informacija o Passengeru možete pronaći na web stranici projekta. O putničkom preduzeću - .

Puma: Moderni web server za Ruby

Puma je web server visokih performansi za Ruby aplikacije. Zasnovan je na web serveru Mongrel, koji je dodao nekoliko revolucionarnih karakteristika i na mnogo načina uticao na razvoj Ruby aplikacija. Programer Puma (Evan Phoenix) transformirao je Mongrel-ovu operativnu strukturu prelaskom na Rack (i na taj način eliminirajući neke probleme s performansama) i razvio aplikaciju za podršku konkurentnosti.

Puma karakteristike

Puma ne zahtijeva puno prostora i koristi malo resursa.

Puma web server nudi nekoliko načina rada: omogućava vam da postavite minimum i maksimalni iznos niti, a podržava i način rada klastera, gdje možete koristiti račvane procese za istovremenu obradu zahtjeva.

Zasnovan je na parseru Mongrel i u velikoj mjeri je naslijedio svoj kod.

Puma web server je dizajniran za Rubinius, ali može raditi i sa JRubyjem

Pruža jednostavan, ali prilično opsežan i fleksibilan skup konfiguracija, što olakšava pripremu web servera za razvoj i okruženje.

Izvan kutije, Puma ne podržava hosting i proizvodnju za više aplikacija, ali to se može učiniti pomoću namjenskog alata Jungle.

Tanak: jednostavan i brz HTTP server

Tanak je veoma popularan server aplikacije; njegovi kreatori tvrde da je to najsigurniji, stabilniji, brz i proširiv Ruby web server. Tanak se aktivno razvija. Zasnovan je na tri osnovne Ruby biblioteke:

  • Parser Mongrel.
  • Mrežna biblioteka EventMachine
  • Rack Middleware

Thin Features

Thin HTTP Server je dizajniran da radi sa bilo kojim okvirom koji implementira Rack specifikaciju. Da bi to učinio, on preuzima konfiguracijske datoteke Rack.

Zasnovano na EventMachine-u, Thin može rukovati dugim zahtjevima bez pomoći obrnutog proxyja (za razliku od nekih drugih web servera).

Bilješka: Da biste saznali više o Thin-u, idite na web stranicu projekta.

Unicorn: HTTP server zasnovan na racku za brze klijente i Unix

Unicorn je zreo, potpuno opremljen aplikacijski server za Ruby. Kasnije je prilagođen za rad sa Pythonom. Princip rada Unicorn-a je sljedeći: web server ne obavlja sve zadatke, već samo one za koje je direktno odgovoran, ostale zadatke prenosi na druge programe koji ih bolje mogu izvesti.

Karakteristike jednoroga

Glavni proces Unicorn pokreće radne procese za obradu zahtjeva prema datim parametrima. Također prati radničke procese kako bi spriječio probleme sa resursima. To jest, ako proces zahtijeva puno vremena ili resursa, server će ga zaustaviti s Unicorn-om.

Kao što je gore pomenuto, Unicorn koristi operativni sistem za balansiranje opterećenja; da bi to učinio, može prenijeti zadatke na druge usluge. Zahvaljujući tome, zahtjevi se ne gomilaju.

Poput NGINX-a, Unicorn vam omogućava da implementirate aplikacije bez prekida trenutnih veza klijenata. Ovo je vrlo korisna funkcija prilikom ažuriranja aplikacije.

Ostalo korisne karakteristike jednorog:

  • Svi radni procesi se pokreću unutar određenog izolovanog adresnog prostora i opslužuju zahtjeve jedan po jedan.
  • Zadice before_fork i after_fork vam omogućavaju da se bavite procesnim viljuškama.
  • Mehanizam kopiranja-upisivanja za upravljanje memorijom štedi memoriju.
  • Web server može slušati na više interfejsa.

Bilješka: Više o Unicorn - .

Tagovi: ,

U pravilu, za običnog korisnika, koncepti kao što su "web server" ili "hosting" povezani su s nečim potpuno nerazumljivim. U međuvremenu, u ovoj stvari nema ništa komplikovano. Pokušajmo da objasnimo šta je web server, zašto je potreban i kako funkcioniše, ne ulazeći u tehničke detalje, već, da tako kažem, na prste. Zasebno ćemo se zadržati na pitanju kako stvoriti i konfigurirati takav server na kućnom računarskom terminalu ili laptopu.

Šta je web server?

Najvažnija stvar u ovaj problem- shvatite da server ovog tipa nije ništa drugo do računar na Internetu sa instaliranim odgovarajućim softverom.

Ali to apsolutno ne znači da ne možete kreirati vlastitu konfiguraciju kod kuće. Pošto imamo više zajedničkih operacija Windows sistemi, pitanja o tome kako kreirati web server na Ubuntu (Linux) neće biti razmatrana.

Čemu služe web serveri?

Ovaj tip servera pohranjuje mnogo informacija na Internetu. U isto vrijeme, isti antivirusi se pozivaju na njih da ažuriraju vlastite baze podataka. Korisnik takođe ima direktan odnos sa takvim serverima, postavljajući zahteve u pretraživaču (traženje informacija, pristupanje stranici, itd.).

Tako ispada da su sve stranice prisutne na Internetu pohranjene na web serverima, na koje se, s jedne strane, upućuje korisnički zahtjev ili žalba instalirani program, a sa druge strane, rezultat se vraća od samog servera kojem se pokušava pristupiti.

Kako sve to funkcionira?

Svi su korisnici navikli da se za unos nekog resursa na Internetu (web stranica) koji sadrži informacije određene vrste jednostavno unese u adresnu traku prefiks www (ili http) i naknadno ime. Ali niko ne razmišlja o tome kako web server razumije zahtjev i daje rezultat.

Zapravo, ovdje morate razlikovati koncepte servera i klijenta. U našem slučaju, stranica koja se nalazi na Internetu je pohranjena na udaljenom serveru. Korisnički računar se ponaša kao klijent sa kojeg se poziva.

Za pristup Internetu koriste se programi koji se nazivaju web pretraživači. Oni prevode zahtjev korisnika u digitalni kod koji prepoznaje web server. Server ga obrađuje i daje odgovor u odgovarajućem kodu, a pretraživač već pretvara milione nula i jedinica u normalan oblik sa tekstualnim, grafičkim, zvučnim ili video informacijama koje se postavljaju na stranicu.

Najpopularniji web serveri

Od svih serverskih softvera, Apache i Microsoft IIS se smatraju najčešćim. Prvi je popularniji i više se koristi u Sistemi slični UNIX-u, iako se može podesiti na Windows okruženje. Osim toga, Apache server je apsolutno besplatan softver i kompatibilan je sa gotovo svim poznatim operativni sistemi. Međutim, kao što je navedeno, ovaj softver je uglavnom namijenjen profesionalnim programerima i programerima.

Softverski proizvod iz Microsofta je dizajniran za prosječnog korisnika, koji može instalirati i konfigurirati takav web server za Windows bez njega dodatna pomoć kvalifikovani specijalista.

Ipak, na osnovu zvanične statistike, Apache softver koristi oko 60% svih postojećih servera, pa ćemo pitanje instaliranja i podešavanja početne konfiguracije razmotriti na njegovom primjeru.

Web server na kućnom računaru: instalacija

Za instalaciju, morat ćete preuzeti poseban serverski paket, skraćeno WAMP, koji uključuje tri glavne komponente:

  • apač- školjka server koji može raditi samostalno, ali samo ako nema dinamičkog sadržaja na hostiranim stranicama.
  • PHP je programski jezik koji koriste dodaci za upravljanje serverima dinamičkog sadržaja kao što su WordPress, Joomla, Drupal.
  • MySQL je objedinjeni sistem za upravljanje bazom podataka koji se ponovo koristi prilikom kreiranja veb lokacija sa dinamičkim sadržajem.

Instalacija se može obaviti iz paketa WampServer. Da biste to učinili, samo slijedite upute "Čarobnjaka", koji će u jednoj od faza od vas tražiti da odaberete internetski preglednik koji će se koristiti prema zadanim postavkama.

Da biste to učinili, morat ćete otići u mapu s izvršnom datotekom pretraživača (ako nije Internet Explorer, obično se nalazi u direktoriju Programske datoteke). Usput, sam pretraživač bi trebao biti dodat na listu izuzetaka Windows zaštitnog zida. U završnoj fazi, ispred stavke neposrednog pokretanja stavlja se kvačica, nakon čega će se u sistemskoj paleti pojaviti odgovarajuća ikona na koju morate kliknuti i promijeniti je da odaberete pokretanje lokalnog hosta (localhost).

Ako je sve urađeno kako treba, pojavit će se Početna stranica server. Zatim će se od vas tražiti da instalirate dodatne komponente (ako se to ne učini, sistem će dati grešku). U osnovi, instalacija se odnosi na dodatne dodatke, elemente i komponente koje će server koristiti u budućnosti.

Primjer postavljanja i testiranja servera

Postavljanje web servera je nešto složenije. Prvo, u meniju sistemske palete, idite do WWW foldera (gde su pohranjeni dodaci ili HTML fajlovi). Nakon toga napišite sljedeći tekst u Notepad:

WAMP test!

Zdravo!

"; ?>

Možete jednostavno kopirati tekst u Notepad i sačuvati datoteku kao index.php u istom WWW folderu (iako možete i bez toga, pošto se ovaj korak koristi samo za provjeru lokalnog hosta). Umjesto pozdrava, možete umetnuti bilo koji drugi tekst ili frazu.

Zatim u pretraživaču trebate osvježiti stranicu (F5), nakon čega će se sadržaj prikazati na ekranu. Ali za druge računare, stranica neće biti dostupna.

Da biste otvorili pristup, morate promijeniti datoteku httpd.conf tako što ćete napisati u odjeljak koji počinje s sljedeći redovi:

Naredi dozvoli, odbij

Umjesto pogovora

Naravno, što se tiče razumijevanja suštine funkcioniranja ili postavki kućnog web servera, ovdje su date samo najpočetnije i najkraće informacije, da tako kažem, za opće razumijevanje. Zapravo, svi procesi su mnogo složeniji, posebno u smislu pretvaranja zahtjeva i izdavanja odgovora, a da ne spominjemo postavke servera kod kuće. Ako korisnik ima želju da razumije ove probleme, ne može bez barem osnovnog znanja o istom WordPress dodatku i PHP jeziku. S druge strane, za objavljivanje primitivnih stranica koje sadrže uglavnom samo tekstualne informacije, mogu se koristiti i ove početne informacije.

Zdravo, ovaj članak pokriva 5 najpopularnijih opcija za postavljanje servera za web aplikaciju. Koje su opcije i koju odabrati?

Postoji mnogo faktora koje treba uzeti u obzir pri odabiru serverskog okruženja, kao što su performanse, skalabilnost, dostupnost, pouzdanost, cijena i jednostavnost upravljanja.

U članku je predstavljen skup najčešće korišćenih serverskih okruženja sa njihovim kratak opis uključujući prednosti i nedostatke. Svi koncepti se mogu koristiti u različitim kombinacijama jedni s drugima, a svako okruženje ima različite zahtjeve, tako da ne postoji jedinstvena ispravna konfiguracija.

1. Sve na jednom serveru

Okruženje je na istom serveru. Za tipičnu web aplikaciju, ovo bi uključivalo web server, server aplikacija i server baze podataka. Poseban slučaj implementacije ovog skupa je, čiji je naziv skraćenica za Linux, Apache, MySQL i PHP, na istom serveru.

Primjer upotrebe: Dobro za brzo postavljanje aplikacije, jer je najjednostavnija konfiguracija od svih, ali nudi malo u smislu skalabilnosti i izolacije komponenti.

Pros:

  • Jednostavnost

Minusi:

  • Aplikacija i baza podataka koriste iste resurse servera (CPU, memoriju, I/O, itd.), što, pored potencijalno loših performansi, otežava određivanje izvora (aplikacije ili baze podataka) ove najniže performanse.
  • Teško je horizontalno skalirati.

2. Namjenski server baze podataka

Sistem za upravljanje bazom podataka (DBMS) se može odvojiti od ostatka okruženja kako bi se eliminisala konkurencija za serverske resurse između aplikacije i baze podataka i povećala sigurnost uklanjanjem baze podataka iz DMZ-a, javnog Interneta.

Primjer upotrebe: Dobro za brzo postavljanje aplikacije, ali i eliminiše problem sukoba aplikacija i baze podataka za iste sistemske resurse.

Pros:

  • Aplikacija i baza podataka se ne takmiče za iste resurse servera (CPU, memorija, I/O, itd.).
  • Svaku komponentu (aplikaciju i bazu podataka) možete vertikalno skalirati nezavisno dodavanjem dodatnih resursa na željeni server.
  • Uz određene postavke, ovo može poboljšati sigurnost uklanjanjem baze podataka iz DMZ-a.

Minusi:

  • Proces instalacije je malo složeniji nego u slučaju korištenja jednog servera.
  • Problemi s performansama mogu se pojaviti ako mrežna veza između dva servera ima dugo vrijeme odgovora (na primjer, serveri su geografski odvojeni jedan od drugog), ili propusnost nedovoljno za prenete podatke.

3. Balansator opterećenja (obrnuti proxy)

Balanseri opterećenja mogu se dodati serverskom okruženju kako bi se povećale performanse i pouzdanost raspodjelom opterećenja na više servera. Ako se jedan od servera pokvari, drugi serveri će obraditi dolazni promet dok se oboreni server ponovo ne pokrene. Balansator opterećenja se također može koristiti za opsluživanje više aplikacija na istoj domeni i portu koristeći obrnuti proxy.

Primjeri reverznog proxy softvera uključuju HAProxy i Varnish.

Primjer upotrebe: Korisno za okruženja koja zahtijevaju skaliranje dodavanjem više servera, također poznato kao horizontalno skaliranje.

Pros:

  • Omogućava horizontalno skaliranje, odnosno resursi okruženja mogu se povećati dodavanjem novih servera.
  • Može zaštititi od DDOS napada ograničavanjem klijentskih veza na prihvatljiv broj i učestalost.

Minusi:

  • Balansator opterećenja može postati usko grlo u performansama ako nema dovoljno resursa ili je pogrešno konfiguriran.
  • Može stvoriti dodatne složenosti koje zahtijevaju dodatni napor od administratora, na primjer, rad sa aplikacijama koje zahtijevaju takozvane "ljepljive sesije" (ljepljive sesije).

4. HTTP Accelerator (keširanje obrnutog proxyja)

HTTP akcelerator ili obrnuti proxy koji kešira HTTP zahtjeve, može se koristiti za smanjenje vremena potrebnog za posluživanje sadržaja korisniku korištenjem razne metode. Osnovna tehnika koja se koristi s HTTP akceleratorom je keširanje odgovora s weba ili poslužitelja aplikacija u memoriju tako da se naknadni zahtjevi za istim sadržajem mogu obraditi brzo i uz manje nepotrebnih interakcija s web ili aplikacijskim serverom.

Primjeri softvera koji podržava HTTP ubrzanje: Varnish, Squid, Nginx.

Primjer upotrebe: Korisno za dinamičke web aplikacije sa teškim sadržajem ili velikim brojem datoteka kojima se može pristupiti u isto vrijeme.

Pros:

  • Poboljšava performanse sajta smanjujući opterećenje procesora web servera kroz keširanje i kompresiju, čime se povećava broj korisnika koji se opslužuju.
  • Može se koristiti kao reverzni proxy balanser opterećenja.
  • Neki softver za keširanje može zaštititi od DDOS napada.

Minusi:

  • Za najbolje performanse potrebno je podešavanje.
  • Ako priroda korisničkih zahtjeva ne dozvoljava efikasno keširanje, to može pogoršati performanse servera.

5. Replikacija baze podataka prema shemi master-slave (Master-Slave)

Jedan od načina da se poboljša performanse sistema baze podataka koji prima mnogo više čitanja nego upisivanja, kao što su sistemi za upravljanje sadržajem (CMS), je korištenje master-slave replikacije baze podataka. Takva šema pretpostavlja prisustvo jednog glavnog i jednog ili više slave čvorova. U ovom slučaju, sva upisivanja su usmjerena na glavni čvor, a zahtjevi za čitanje mogu se distribuirati među svim čvorovima.

Primjer upotrebe: Daje dobar napredak u performansama aplikacije u smislu čitanja iz baze podataka.

Evo primjera replikacije baze podataka master-slave s jednim slave čvorom:

Pros:

  • Poboljšava performanse čitanja baze podataka distribucijom zahtjeva za čitanje preko slave čvorova.
  • Može poboljšati performanse pisanja koristeći host isključivo za pisanje (tako da ne gubi vrijeme na servisiranje zahtjeva za čitanje)

Minusi:

  • Aplikacija baze podataka mora imati mehanizam za određivanje na koje čvorove poslati zahtjeve za čitanje i pisanje.
  • Ažuriranja slave čvorova su asinhrona, tako da je moguće dobiti ne najnovije podatke kada se to zatraži.
  • Ako glavni čvor prestane da radi, ne može se izvršiti ažuriranje baze podataka dok se problem ne riješi.
  • Nema ugrađenu redundantnost u slučaju kvara glavnog čvora.

Primjer: kombiniranje koncepata

Možete pored servera aplikacija i koristiti replikaciju baze podataka u jednom okruženju. Cilj kombinovanja ovih metoda je da se dobiju prednosti svakog pristupa bez dodavanja previše složenosti.

Evo primjera dijagrama kako bi okruženje servera moglo izgledati:

Pretpostavimo da je balansator opterećenja konfiguriran da prepozna statičke zahtjeve (kao što su slike, CSS, JavaScript, itd.) i pošalje te zahtjeve serverima za keširanje i sve ostale zahtjeve serverima aplikacija.

Evo šta će se dogoditi kada korisnik podnese zahtjev za dinamički sadržaj:

  1. Korisnik zahtjeva dinamički sadržaj sa http://example.com/(balansator opterećenja).
  2. Balansator opterećenja šalje zahtjev aplikacijskom poslužitelju (app-backend).

Ako korisnik traži statički sadržaj:

  1. Balansator opterećenja provjerava keš (cache-backend) da vidi da li je traženi sadržaj keširan.
  2. Ako je keširano, tada se traženi sadržaj vraća u balansator opterećenja, idite na korak 7. Ako nije keširano, tada će server za keširanje proslijediti zahtjev poslužitelju aplikacija preko balansera opterećenja.
  3. Balansator opterećenja će proslijediti zahtjev poslužitelju aplikacija.
  4. Poslužitelj aplikacija (app-backend) čita iz baze podataka i vraća traženi sadržaj natrag u balansator opterećenja.
  5. Balansator opterećenja prosljeđuje odgovor na keš server (cache-backend).
  6. Server za keširanje kešira primljeni sadržaj i vraća ga balanseru opterećenja.
  7. Balansator opterećenja vraća traženi sadržaj korisniku.

Ovo okruženje ima dvije moguće točke kvara (balansator opterećenja i glavni poslužitelj baze podataka), ali pruža druge prednosti pouzdanosti i performansi opisane ranije u svakoj tački.

Sada biste trebali imati dobru ideju o tome što ćete točno koristiti za svoju aplikaciju ili aplikacije. Ako radite na poboljšanju svog okruženja, zapamtite da je najbolje raditi iterativno kako biste izbjegli prekomerne komplikacije.



Učitavanje...
Top