Vaihtoehtoinen välimuistimenetelmä .htaccessille. Mikä on selaimen välimuisti

Lue lisää SharePoint BLOB -välimuistista, sivun tulostevälimuistista ja objektivälimuistista.

Microsoft SharePoint Server 2010:n avulla voidaan rakentaa erilaisia ​​liiketoimintaratkaisuja yhteistyöportaaleista ja tallennearkistoista Internet-sivustoihin. Minkä tahansa vaihtoehdon valitsetkin, olet silti kiinnostunut ratkaisun hyväksyttävästä nopeudesta, ja tässä välimuistin periaatteiden ymmärtäminen ei ole tarpeetonta. Välimuistin päätehtävä on varmistaa portaalisi nopeampi näyttö loppukäyttäjille. Mutta jokaisella kolikolla on kaksi puolta, joten sinun on tiedettävä erilaisten välimuistityyppien edut ja haitat.

Tässä artikkelissa puhumme kolmesta välimuistityypistä. Jokaisella niistä on ainutlaatuiset toiminnot, jotka auttavat SharePoint Serveriäsi kasvamaan. Välimuisti ei kuitenkaan ole ihmelääke; jokaisella välimuistityypillä on omat kompromissinsa, ja on kaukana tosiasiasta, että kaikki välimuistityypit sopivat sinun skenaarioosi. Välimuistin harkitsematon käyttöönotto ilman oikeat asetukset, ei todennäköisesti johda odotettuun suorituskyvyn paranemiseen.

Mikä tahansa SharePoint Server -asennus koostuu Microsoftin esiintymästä SQL Server ja vähintään yksi Web Front-End -palvelin. Kun käyttäjät pyytävät tietoja SharePoint Serveriltä (esimerkiksi sivun tai asiakirjan), WFE-palvelin vastaanottaa kaikki tarvittavat tiedot SQL:stä ja käsittelee käyttäjäpyynnön sen perusteella. Vaikka näin varmistetaan, että käyttäjä saa viimeisimmät tiedot, tämä tilanne johtaa SQL- ja WFE-palvelimien välisen liikenteen lisääntymiseen, mikä puolestaan ​​vaikuttaa loppukäyttäjän nopeuteen.

SharePoint Server -välimuisti toimii Web Front-End -palvelimissa, jokainen välimuistityyppi tallentaa paikallisen kopion tiedoista palvellakseen asiakkaita paikallista välimuistia käyttäen, mikä vähentää SQL-palvelimelta siirrettävien tietojen määrää ja sen kuormitusta. omat prosessorit.

BLOB-välimuisti.

BLOB-välimuisti vähentää SQL Serverin kuormitusta tallentamalla pyydettyjen tiedostojen sisällön (useimmiten sivun osia, kuten JavaScript, CSS ja kuvat) WFE-palvelimen kiintolevyille. Kun uusi pyyntö tulee tiedostosta, joka on jo tallennettu välimuistiin, BLOB-välimuisti palauttaa tiedoston levyltä SQL Serverin kutsumisen sijaan.

Kun kehität SharePoint-sivustoja, sivujen sisällön tallentamiseen on useita paikkoja. Niitä voidaan säilyttää tiedostojärjestelmä WFE-palvelin (yleensä _layouts-hakemistossa) tai SharePoint-kirjastossa. _layouts-hakemistoon tallennetut tiedostot voidaan lukea levyltä melko nopeasti, mutta jos tiedostot on päivitettävä, järjestelmänvalvojan on muutettava ne jokaisella WFE-palvelimella. SharePoint-kirjastoon tallentamisessa on etunsa, joten paitsi maatilan ylläpitäjät voivat lisätä ja päivittää sisältöä, myös käyttäjät. Mutta koska kaikki kirjastoon tallennettava on SQL:ssä ja poimimalla dataa SQL:stä, niiden saamisnopeus on pienempi. Joten kun tallennat tiedostoa SharePointiin ja käytät BLOB-välimuistia, sisältöön pääsee nopeasti ja on mahdollisuus keskitettyyn hallintaan.

Mutta on myös vivahteita. Uutta tiedostoa lisättäessä se tekee viisi kertaa enemmän pyyntöjä SQL-palvelimelle kuin tilanteessa, jossa BLOB-välimuisti ei ole käytössä. Nämä lisäkutsut hakevat käyttöoikeustietoja ja muita metatietoja välimuistin turvallisen ja luotettavan toiminnan varmistamiseksi. Lisäksi BLOB-välimuisti poistaa tiedostoja välimuistista, jotta vanhentunutta sisältöä ei palauteta asiakkaalle, jos on mahdollista, että ne vanhentuvat. Luonnollisesti tämän jälkeen tiedosto tallennetaan uudelleen välimuistiin, mikä taas vaikuttaa SQL-kutsuihin.

Sen lisäksi, että BLOB-välimuisti vähentää osumia SQL-palvelimeen, se auttaa vähentämään sivun uudelleenlatausaikaa lisäämällä ohjausotsikot palvelemiensa tiedostojen HTTP-vastaukseen. Nämä otsikot käskevät käyttäjän selaimen tallentamaan nämä tiedostot selaimen välimuistiin. Kun selain tarvitsee jonkin välimuistissa olevista tiedostoista, se voi käyttää välimuistia SharePoint Serverin käyttämisen sijaan. Tämä vähentää merkittävästi HTTP-pyyntöjä ja sivun latausaikaa.

Kuten jo mainittiin, BLOB-välimuisti on erityisen hyödyllinen suurten multimediatiedostojen välimuistissa. SharePoint itsessään on optimoitu työskentelemään pienten tiedostojen kanssa. Se pystyy käsittelemään pienempiä tiedostoja FileReadChunkSize (100 kt) per pyyntö ja tiedostot enintään 5 Mt LargeFileChunkSize palvellaan suoraan SQL:stä ilman levypuskurointia alhaisella viiveellä. SharePoint puskuroi yli 5 Mt:n tiedostot WFE-palvelimen levylle ennen kuin palauttaa ne käyttäjälle. Tämä säästää muistia, mutta vaikuttaa paluuviiveeseen. BLOB-välimuisti voi vähentää viivettä tässä tilanteessa. Kun tiedosto on välimuistissa BLOBissa, se palautetaan yhtä nopeasti kuin jos se sijaitsisi suoraan IIS:ssä.

Toinen BLOB-välimuistin etu on, että sen avulla voit pyytää HTTP:n osaa tiedostosta koko tiedoston pyytämisen sijaan. Jos selain esimerkiksi tarvitsee vain 1 Mt 10 Mt:n tiedostosta, se voi tehdä pyynnön ja saada vain 1 Mt välimuistista. Kun BLOB-välimuisti on poistettu käytöstä, SharePoint Server ohittaa tällaiset pyynnöt (englanninkielisessä dokumentaatiossa niitä kutsutaan HTTP-alueen pyynnöiksi) ja palauttaa pyydetyn tiedoston täyden koon. Osoittautuu, että BLOB-välimuisti lisää verkon suorituskykyä minimoimalla verkon kuormituksen.

Asiakasmediasoittimet hyötyvät eniten tällaisista osittaisista HTTP-alueen pyynnöistä. Sillä ei ole väliä, onko kyseessä Web-sivulle sisäänrakennettu Windows Media Player tai Silverlight, kun siirrät videon eteenpäin liukusäädintä, BLOB-välimuisti palauttaa vaaditun osan tiedostosta lataamatta sitä kokonaan asiakkaalle.

Looginen arkkitehtuuri ja asettelu.

BLOB-välimuisti toimii jokaisessa tilan WFE-palvelimessa. Tarkemmin sanottuna jokainen verkkosovellus ja jokainen virtuaalinen palvelin Meillä on oma BLOB-välimuisti. Tässä tapauksessa virtuaalipalvelin tarkoittaa IIS-verkkosivustoa, mutta SharePoint Serverissä jokainen verkkosovellus on yleensä liitetty yhteen virtuaalipalvelimeen. Vain yksi BLOB-välimuistiinstanssi voi olla käynnissä yhdellä virtuaalipalvelimella kerrallaan. Tämä tarkoittaa, että BLOB-välimuistia ei voi käyttää Web Gardenin kanssa. (Verkkopuutarha on sovelluspooli, joka käyttää useampaa kuin yhtä pyyntöprosessia pyyntöjen käsittelemiseen, useampaa kuin yhtä w3wp.exe-prosessia)

Jos SharePoint-verkkosovellus on laajennettu, ja se yleensä laajenee käytettäessä eri tavoilla yhden portaalin todennusta varten toista virtuaalipalvelinta käsittelee sen oma BLOB-välimuistin esiintymä. Siksi BLOB-välimuisti on käytössä jokaiselle vyöhykkeelle erikseen. Esimerkiksi sisäisten käyttäjien pyytämät tiedot tallennetaan välimuistiin, mutta ulkoisten käyttäjien (ulkoisen URL-osoitteen kautta) pyytämät tiedot eivät tallennu välimuistiin. Ja vaikka ulkoisille ja sisäisille käyttäjille tarjottu sisältö on identtinen, välimuistin kahta esiintymää ei voida välttää.

Välimuistin täyttömekanismi.

Tietyillä tunnisteilla varustetut tiedostot päätyvät BLOB-välimuistiin käyttäjien pyynnöstä. Laajennusluettelo on muokattavissa ja se voidaan määrittää tiettyjä tehtäviä varten. Kun tiedosto kirjataan ulos BLOB-välimuistista ensimmäistä kertaa, pienissä tiedostoissa voi olla hieman pidempi viive kuin tavallisessa SharePoint-tarkastuksessa. Toisaalta suuret tiedostot palvellaan nopeammin suoritetun BLOB-välimuistin optimoinnin ansiosta. Tiedostoa aletaan tallentaa välimuistiin, kun ensimmäiset tavut luetaan SQL Serveristä. Tiedot palautetaan asiakkaalle, kun taas loput niistä ladataan tietokantapalvelimelta. Tämä pätee luonnollisesti vain ensimmäiseen pyyntöön, koska myöhemmillä kerroilla tiedot toimitetaan suoraan BLOB-välimuistista.

BLOB-välimuisti voi käsitellä useita pyyntöjä yhdelle tiedostolle asettamalla välimuistin tiedot kaikkien pyyntöjen saataville. Tämä tapahtuu, vaikka tiedostoa ei ole vielä kokonaan haettu SQL Serveristä. Esimerkiksi linkki SharePoint Serveriin tallennettuun videoraporttiin (500 Mt) lähetetään osoitteeseen sähköposti yrityksen työntekijöitä. Jos suuri määrä käyttäjiä napsauttaa linkkiä samanaikaisesti, välimuisti on poistettu käytöstä, SQL Serverille tehdään monia kyselyjä. (yksi jokaiselle käyttäjälle) Ei ole vaikea arvata, kuinka tämä vaikuttaa suorituskykyyn. Kun välimuisti on käytössä, jokainen WFE-palvelin vastaanottaa videon SQL:stä kerran, ja vaikka sillä ei olisikaan aikaa tallentaa kokonaan välimuistiin, sitä käytetään kaikkien pyyntöjen palvelemiseen. Johtopäätös ehdottaa itseään - BLOB-välimuisti on välttämätön suurten tiedostojen palvelemiseen SharePoint-palvelimella.

Tietojen tallennus ja levyvälimuistin koko.

Koska sinun ei pitäisi muokata mitään välimuistitiedostoja manuaalisesti, BLOB-välimuistin rakenteen ymmärtäminen levylle on hyödyllistä, ainakin teoreettisesta näkökulmasta. BLOB-välimuisti tallentaa tiedostonsa levylle rakenteessa, joka peilaa portaalisi rakennetta. Esimerkiksi portaalissa oleva tiedosto, jonka URL-osoite on http://contoso/sites/publishing/documents/somefile.jpg, tallennetaan levylle suunnilleen seuraavaan polkuun c:\BlobCache\14\11111111\AB25499AF39572\sites\publishing \documents\somefile-1238DEF8097AB .jpg. Tämä polku sisältää satunnaisia ​​osia merkkijonosta, tämä tehdään päällekirjoituksen estämiseksi vanha versio tiedosto on uudempi, koska vanha tiedosto tällä hetkellä sitä voi vielä käyttää. Sen isännän nimi, jossa tiedosto sijaitsee, korvataan linkissä ainutlaatuisella merkkijonolla, mikä estää välimuistiristiriidat kahden tiedoston välillä, joiden osoitteet ovat kuten http://contoso/images/logo.jpg ja http://northwinds/images/ logo.jpg.

Leikkaussalissa Windows-järjestelmä Tiedostopolussa on 260 merkin rajoitus. Koska BLOB-välimuisti lisää ainutlaatuisia rivejä välimuistin tiedostopolkuihin, on täysin mahdollista, että kirjoitettaessa tiedostoa levylle tämä raja ylittyy. Siksi sinun tulee yrittää välttää liian pitkiä URL-osoitteita SharePoint-portaalissasi. Jos noudatat suositusta, normaalissa tiedostovälimuistissa sinun ei pitäisi tehdä portaaliin yli 160 merkin pituisia linkkejä.

Levytilan lisäksi BLOB-välimuisti vaatii pienen määrän RAM-muistia ylläpitääkseen tiedostohakemistoa levyllä. Jokainen indeksimerkintä käyttää noin 800 tavua muistia. Useimmissa tapauksissa BLOB-välimuistin käyttämä muisti on pieni osa SharePointin kuluttamasta kokonaismuistista. Kuitenkin, jos BLOB-välimuistiin on tallennettava satoja tuhansia tiedostoja, muistivaatimukset on suunniteltava edellä mainittuja ajatellen.

BLOB-välimuistin pysyvyys, kun sovelluspooli käynnistetään uudelleen.

BLOB-välimuisti on ainoa pysyvä välimuisti, mikä tarkoittaa, että se kestää IIS-sovelluspoolin uudelleenkäynnistykset tai sammutukset. Tämä tapahtuu, koska indeksi kirjoitetaan säännöllisesti levylle. Sarjamuotoinen indeksi on noin kolmasosa muistissa olevan indeksin koosta. Kuten kaikki I/O-toiminnot, indeksin koko vaikuttaa serialisoinnin ja deserialisoinnin pituuteen. Erittäin suuri BLOB-välimuisti sisältää satoja tuhansia elementtejä, joten niiden uudelleenkirjoittaminen hakemistoon voi kestää yli minuutin. Kun sarjoitusprosessi on käynnissä, uusia kohteita ei voi lisätä välimuistiin. Tämä tarkoittaa, että jos vastaanotetaan pyyntöjä tiedostoista, jotka eivät vielä ole välimuistissa, asiakkaan on odotettava, kunnes sarjoitusprosessi on valmis. Jos indeksi on erittäin suuri (miljoonia objekteja), serialisointiaika voi ylittää asiakkaan pyynnön aikakatkaisun ja pyyntö hylätään.

Välimuistin tarkistusmekanismi.

BLOB-välimuisti puhdistaa vanhentuneet välimuistitiedostot kysymällä SharePoint Serveristä muutoksia. Oletuskyselyväli on viisi sekuntia, mutta tämä parametri voidaan määrittää. Itse asiassa tiedosto poistetaan myöhemmin (tämä aikaväli on myös määritettävissä), kun kaikki HTTP-istunnot on poistettu käytöstä. Välimuistista vanhentuneita ja poistettuja tiedostoja ei lisätä välimuistiin automaattisesti, vaan ne lisätään seuraavan kerran, kun käyttäjä pyytää tiedostoa. Kun SharePoint-sivuston sisältö muuttuu, BLOB-välimuisti voi muuttua melko nopeasti. Seuraava taulukko näyttää tiedostotoiminnot ja niiden vaikutuksen BLOB-välimuistiin.

BLOB-välimuistin enimmäiskokoa säädetään myös tarpeettoman tuhlauksen välttämiseksi. Vapaa tila levyllä. Kun välimuistissa olevien tiedostojen kokonaiskoko ylittää vahvistetut rajat, BLOB-välimuisti poistaa vähiten käytetyt tiedostot, kunnes välimuistissa olevien tiedostojen paino putoaa 70 prosenttiin sallitusta koosta. Tätä prosessia kutsutaan tiivistämiseksi. Tiivistys on suorituskyvyn kannalta melko "kallis" prosessi mahdollisen toistuvan välimuistin vuoksi poistetut tiedostot. Kun tiivistät säännöllisesti, voit päästä eroon "epäsuosituista" tiedostoista ja vapauttaa tilaa useammin käytetyille tiedostoille. Jos tiivistämistä tapahtuu usein, tämä tarkoittaa vain välimuistitilan puutetta. Voit nähdä tämän toiminnon tiheyden käyttämällä SharePoint Disk-Based Cache -ryhmän Välimuistin pakkausten kokonaismäärä -laskuria. Lisätilan tarjoaminen usein tapahtuvaa tiivistämistä varten on hyvä päätös, ihanteellisissa olosuhteissa välimuistin koon tulisi olla riittävä kaikkiin suosittuihin kyselyihin.

Toinen tapa poistaa välimuistissa olevia tiedostoja on nollata välimuisti. Kun välimuisti nollataan, uusi kansio luodaan, mutta vanha välimuisti säilyy. Tämä mahdollistaa olemassa olevien kyselyjen suorittamisen vanhaa välimuistia vastaan. Vanha välimuisti poistetaan myöhemmin tietyn ajan kuluttua. (konfiguroitavissa oleva aikaväli) Välimuisti voidaan nollata useista syistä: jos indeksiä ei voida deserialisoida oikein käynnistyksen yhteydessä, verkkosovelluksen käyttäjäkäytäntö on muuttunut, sisältötietokantaa ei voida lukea. Välimuisti voidaan tyhjentää myös manuaalisesti kutsumalla PowerShellin Microsoft.SharePoint.Publishing.PublishingCache.FlushBlobCache()-funktiota.

Todennus ja BLOB-välimuisti.

BLOB-välimuisti on optimoitu anonyymien tiedostojen palauttamiseen. Kun anonyymisti käytettävissä olevaa tiedostoa pyydetään, BLOB-välimuisti palauttaa sen ennen todennusyritystä.

Tämän toimintaperiaatteen hyödyt voidaan saada kahdessa tapauksessa.

1. Anonyymi pääsy sivustolle on sallittu

2. Usein pyydetyt tiedostot tallennetaan kirjastoihin, joissa vaihtoehto on käytössä AllowEveryoneViewItems.

Kun luot portaalin Publishing Portal -mallin perusteella, parametrijoukolla luodaan kaksi kirjastoa AllowEveryoneViewItems. Nämä ovat "Images"- ja "Site Collection Images" -kirjastot. Joka tapauksessa, vaikka anonyymiä pääsyä ei käytettäisikään, BLOB-välimuisti toimii, mutta WFE-palvelimen on otettava yhteyttä SQL-palvelimeen tarkistaakseen käyttöoikeudet. (ACL)

Jatkuu….

MCT/MVP Ilja Rud

Perustuu asiakirjaan "SharePoint Server Caches Overview"

Jos määritysten päivityksen jälkeen lomakkeesi kelluvat, raportti lakkaa toimimasta ja virheikkunat avautuvat, ongelma voidaan todennäköisesti ratkaista tyhjentämällä välimuisti. Kerromme kuinka.

Mikä on välimuisti?

1C:Enterprise-ohjelma on luotu siten, että työnsä aikana se pyrkii jatkuvasti optimoimaan toimintojen nopeutta. Tätä tarkoitusta varten käyttäjän tietokoneelle luodaan "välimuisti", johon tallennetaan usein käytettyjä tietoja, esimerkiksi: ikkunoiden sijainti ja muoto, käyttäjäpalvelutiedot, valintaasetukset, fontit jne.

Välimuistin avulla voit vähentää palvelimelle tulevien puheluiden määrää ja siten . Tämä mekanismi säästää aikaa, mutta sisältää myös useita ongelmia.

Jos määritysten päivityksen jälkeen lomakkeesi kelluvat, raportti lakkaa toimimasta ja virheikkunat avautuvat, ongelma voidaan todennäköisesti ratkaista tyhjentämällä välimuisti.

Kuinka tyhjentää välimuisti?

Välimuistin tyhjentämiseen on kaksi päätapaa.

1. 1C-tietokannan käynnistäminen "/ClearCache"-parametrilla

Tämä menetelmä on hyvin yksinkertainen. Valitse tietokannan valintaikkunassa se, jonka välimuistin haluat tyhjentää. Napsauta "Muokkaa"-painiketta.

Aseta viimeisessä Edit infobase -ikkunassa käynnistysparametri "/ClearCache". Napsauta "Valmis" ja käynnistä tietokanta.

Yllä olevien vaiheiden seurauksena asiakas-palvelinpyyntöjen välimuisti tyhjennetään. Siksi, jos ongelma oli paikallisessa metatietojen välimuistissa, tämä välimuistin tyhjennysmenetelmä ei toimi. Tätä menetelmää käytettäessä on tärkeää ymmärtää, että tilapäisten tiedostojen kansio "irrotetaan" tietokannasta, mutta Ei poistetaan tietokoneeltasi.

2. Tyhjennä 1C-välimuisti manuaalisesti

Jos haluat poistaa välimuistitiedostoja manuaalisesti, sinun on löydettävä kansiot, joihin välimuisti on tallennettu. varten käyttöjärjestelmät Win7 ja uudemmat väliaikaiset tiedostot tallennetaan osoitteeseen:

  • C:\Käyttäjät\Käyttäjänimi\AppData\Roaming\1C Ja C:\Käyttäjät\Käyttäjänimi\AppData\Local\1C kansioissa, jotka alkavat kirjaimella "1cv8".
  • Windows XP:ssä käyttäjän kansiossa osoitteessa Paikalliset asetukset\Sovellustiedot\1C\.
  • Jos AppData-kansio ei ole näkyvissä, sinun on määritettävä piilotettujen kansioiden näkyvyys.

Alla oleva kuva näyttää miltä välimuistitiedostot näyttävät - kansiot, joilla on pitkät, epäselvät nimet. Meidän tapauksessamme on vain yksi tiedosto.

Tyhjentääksesi välimuistin, sinun on poistettava nämä kansiot.

Tärkeä! Voit poistaa kansioita vain, kun 1C:Enterprisen kanssa työskentelyprosessit on suoritettu.

3. Välimuistin tyhjentäminen 1C:ssä palvelimella tai käyttäjän tietokoneella valmiilla skripteillä

Internetistä löydät valmiita skriptejä väliaikaisten 1C-tiedostojen puhdistamiseen. Tällaisten komentosarjojen käyttö voi johtaa arvaamattomiin seurauksiin, joten sitä suositellaan vain järjestelmänvalvojille ja tekniselle tuelle.

Tämä menetelmä auttaa tyhjentämään 1C-välimuistin sekä asiakkaan että palvelimen. Tätä varten tarvitset pääsyn vastaaviin palvelinkansioihin

4.Lisä

Jos välimuistin tyhjentämisen jälkeen tapahtuu virhe, esimerkiksi " Virheellinen tallennusmuoto", on edelleen tallennettu, on suositeltavaa pysäyttää ja puhdistaa manuaalisesti kansio reg_1541/SNCCNTX. Se sijaitsee keskitetyn 1C:Enterprise-palvelimen tietokoneessa hakemistossa<рабочий каталог кластера> / <идентификатор информационной базы>.

Esimerkiksi:

Ole varovainen, kaikkea tässä kansiossa ei voi puhdistaa. Listaan ​​mitä voidaan puhdistaa:

  • 1CV8Reg.lst – klusterin rekisteri (se tallentaa luettelon rekisteröidyistä tietokannoista, toimivista palvelimista ja prosesseista, klusterin ja lisäpäällikön välisen kirjeenvaihdon sekä luettelon ylläpitäjistä.)
  • srvribrg.lst – klusterien luettelo (rekisteröidyt klusterit ja keskuspalvelimen järjestelmänvalvojat)
  • 1cv8ftxt – koko tekstihakutiedot. Ne sijaitsevat keskeisellä 1c-palvelimella: klusterin työhakemisto - tietokannan tunniste
  • 1Cv8Log – tietokannan rekisteröintiloki *.lgp ja *.lgf.

On tärkeää pitää mielessä, että välimuistin tyhjentämisen jälkeen 1C:n käynnistys hidastuu hieman.

Valokuvat, opimme, että välimuisti ja RAM on avainasemassa sivuston skaalautuvuuden ja suorituskyvyn kannalta.

Sivusto voi tallentaa tietoja myöhempien pyyntöjen käsittelyn nopeuttamiseksi neljällä tasolla:

  • asiakas;
  • verkkoon;
  • palvelin;
  • sovellustaso.

Verkkosivuston eri sivuilla on usein samat resurssit. Käyttäjän on käytettävä resursseja uudelleen navigoinnin aikana. Kuvia, komentosarjoja ja tyylejä voidaan tallentaa välimuistiin kuukausia, ja itse asiakirjasivu voidaan tallentaa välimuistiin minuutteja asiakasselaimessa.

Asiakastason välimuisti

HTTP-otsikot ovat vastuussa sen määrittämisestä, voidaanko vastaus tallentaa välimuistiin ja kuinka kauan tietoja säilytetään. Seuraava esimerkki Cache-control-otsikosta määrittää, että vastaus voidaan tallentaa välimuistiin 7 päivän ajan. Selain lähettää tietojen tallennuspyynnön uudelleen, jos tallennusaika umpeutuu tai käyttäjä tietoisesti päivittää sivun.

Pyyntö ja vastaus, joka voidaan tallentaa välimuistiin 604 800 sekuntia.

Vastaus voi sisältää myös Last-Modified- tai Etag-otsikon. Näitä otsikoita tarvitaan sen tarkistamiseksi, voidaanko tietoja käyttää uudelleen. 304-vastauksen tila osoittaa, että sisältö ei ole muuttunut eikä uudelleenlatausta tarvita. Huomaa viimeksi muokattu- ja If-Modified-Since-otsikot sekä alla olevat päivämäärät:

Vastaus, jossa on "Last-Modified" -otsikko, jota seuraa sitä käyttävä pyyntö.

Etag-otsikkoa käytetään If-None-Matchin kanssa samalla tavalla vastauskoodien vaihtamiseen, kun havaitaan muutoksia sisällössä, jos sellaisia ​​on.

Hyvin harkituilla HTTP-otsikoilla varustettu sivusto menestyy paremmin käyttäjien keskuudessa. Lisäksi selain säästää aikaa ja kaistanleveyttä.

Verkkotason välimuisti

Asiakkaat, jotka pyytävät samaa sisältöä välityspalvelimelta.

Useat asiakkaat pyytävät samaa sisältöä samaan aikaan.

Tämä yksinkertainen mutta tehokas mekanismi välttää sovelluspuolen sotkua, kun sisällön vanhentuessa tulee suuri määrä pyyntöjä.

Tämän viimeisen mutta ei vähäisimmän lähestymistavan taustalla on ajatus, että välityspalvelin voi parantaa sovelluksen vikasietoisuutta. On olemassa proxy_cache_use_stale-komentomerkintöjä vanhentuneen sisällön toimittamiseen, kun sovellus palauttaa virhetilan tai kun välityspalvelimen ja sovelluksen välinen viestintä ei toimi odotetulla tavalla.

Toinen tärkeä huomioitava välimuistia käytettäessä on kilpailutilanne, joka ilmenee, kun sovelluksen eri esiintymät käyttävät välimuistia sisältämättömiä tietoja samanaikaisesti. Rails-pyynnön välimuistisovellusliittymä sisältää race_condition_ttl-ominaisuuden tämän vaikutuksen minimoimiseksi.

Kilpailuolosuhteiden ennakointi välimuistissa, joissa on useita sovellusesiintymiä, on haastavaa. Optimaalinen ratkaisu tässä tapauksessa on päivittää välimuistitiedot sovellussäikeen ulkopuolella ja käyttää välimuistissa olevia tietoja itse sovelluksessa. Mikropalveluarkkitehtuurissa voit suojata sovelluksen ja palvelun välisen tiedonsiirron nginxillä, kuten yllä on kuvattu.

Johtopäätös

Toivomme, että tämä artikkeli auttaa sinua ymmärtämään ja valitsemaan sovelluksellesi parhaan strategian. HTTP-otsikot ovat yksinkertaisin asia, jonka voit ja sinun tulee määrittää optimoimaan sovelluksesi välimuisti. Käytä myös muita strategioita, kun kohtaat tiettyjä suorituskykyongelmia, mutta muista, että ennenaikainen optimointi on kaikkien ongelmien syy.

17.4.1999 Phil Keppeler

IP-välimuistipalvelimien odotetaan olevan suuri kysyntä yritysmarkkinoilla vuonna 1999. Alla tarkastellaan valmistajien uusimpia tarjouksia. Toisin kuin globaalien verkkojen kaistanleveys, muistista on tullut paljon halvempaa.

IP-välimuistipalvelimien odotetaan olevan suuri kysyntä yritysmarkkinoilla vuonna 1999. Alla tarkastellaan valmistajien uusimpia tarjouksia.

Toisin kuin globaalien verkkojen kaistanleveys, muistista on tullut paljon halvempaa. IDC:n tutkimuksen mukaan globaalien verkkojen kokonaishintataso säilyy ennallaan tai parhaimmillaan laskee hieman. Samaan aikaan muistin hinta laskee vuosittain 31,4-39,8 %.

Nämä tosiasiat huomioon ottaen IP-välimuistista tulee houkutteleva kaistanleveyden käytön optimoinnissa ja verkon tehokkuuden parantamisessa. Usein käytettyjen tiedostojen pitäminen lähempänä loppukäyttäjiä vähentää yrityksen kaistanleveysvaatimuksia maailmanlaajuinen verkosto tai Internet-yhteyksiä ja sen seurauksena eliminoi tai viivästyttää kalliiden päivitysten tarvetta. Se myös parantaa loppukäyttäjien tuottavuutta, koska objektit toimitetaan lähiverkon nopeuksilla.

Internet-yhteisö tiesi välimuistin eduista kauan ennen kuin Internetistä tuli nykyinen kaupallinen ilmiö. Tyypillisesti Internet-palvelujen, kuten ftp, gopher ja konferenssien, tiedostoarkistot peilattiin ympäri maailmaa, jotta suositut tiedostot pysyisivät mahdollisimman lähellä käyttäjiä. HTTP:n käyttöönoton myötä peilauksesta tuli tehoton pyydetyn sisällön valtavan määrän, aikaherkkyyden ja satunnaisen luonteen vuoksi.

IP-välimuistipalvelimet ovat HTTP:lle sitä, mitä peilaus oli arkistointiprotokollille. Kaikki välimuistipalvelimet perustuvat olennaisesti samoihin periaatteisiin: ne sieppaavat selaimelta Web-palvelimelle tulevat objektipyynnöt ja tallentavat palvelimelta vastaanotetut objektit kiintolevylle ennen siirtämistä selaimeen. Siten muilta selaimilta tulevissa samaa objektia koskevissa myöhemmissä pyynnöissä välimuistipalvelin palauttaa objektin kopion muististaan ​​sen sijaan, että välittäisi pyynnön Web-palvelimelle alkuperäisen objektin hankkimiseksi. Ihannetapauksessa välimuistipalvelimen suorittaminen objekteille säästäisi aikaa ja kaistanleveyttä. (Lisää Yksityiskohtainen kuvaus välimuistitekniikat löytyvät tämän vuoden LAN:n nro 3 artikkelista ”Pieni välimuisti on kallista”.)

Sekä kuluttajien että sisällöntuottajien painostuksesta Internet-palveluntarjoajista on tullut IP-välimuistin ensisijaisia ​​käyttäjiä. Nopeammat yhteydet, kuten Digital Subscriber Line (DSL), IDSN ja kaapelimodeemit, antavat toivoa, että dataketjun aikoinaan heikoin lenkki oli tavallinen puhelinmodeemi, jonka tiedonsiirtonopeus on enintään 56 Kbps./s - poistetaan. Internet-yhteyksien nopeutuessa kopioitavien kohteiden määrä kasvaa vastaavasti, mikä johtaa liikenteen lisääntymiseen Internet-runkoverkossa. Samaan aikaan sisällöntuottajat ovat siirtymässä monimutkaisempiin ja suuren volyymin tietomuotoihin, kuten äänen/videon suoratoistoon ja Java-sovelmiin.

Tämän molemmin puolin tapahtuneen hyökkäyksen seurauksena Internet-palveluntarjoajat joutuvat etsimään lisää tehokkaita tapoja käyttää infrastruktuuriaan käyttäjien vaatimusten täyttämiseen. IP-välimuisti oli ja on edelleen tärkeä osa heidän ratkaisuaan.

Vaikka monet Internet-palveluntarjoajat tunnustavat IP-välimuistin edut, yritysten ei ole vielä otettava käyttöön tekniikkaa laajasti. Helmikuussa 1998 julkaistun Collaborative Research -raportin mukaan noin 80 % yhdysvaltalaisista Internet-palveluntarjoajista on ilmoittanut suunnitelmistaan ​​ottaa välimuisti käyttöön seuraavan kuuden kuukauden aikana. Toisaalta vain 56 % yrityksistä suunnitteli aloittavansa välimuistin käytön saman ajanjakson aikana. Kuten asiantuntijat ennustavat, vuonna 1999 välimuistilla on kuitenkin suuri kysyntä yritysmarkkinoilla. Collaborative Researchin mukaan yritysten välimuistiteknologiainvestointien odotetaan ylittävän nopeasti Internet-palveluntarjoajien investoinnin ja kasvavan 85 miljoonasta dollarista vuonna 1998 yli miljardiin dollariin vuonna 2000 (katso taulukko).

Välimuistituotteiden maailmanmarkkinat vuosina 1998-2002.
Markkinasegmentti 1998 1999 2000 2001 2002
Yrityskäyttäjät 85 miljoonaa dollaria421 miljoonaa dollaria1,113 miljoonaa dollaria2,108 miljoonaa dollaria3,157 miljoonaa dollaria
Internet-palveluntarjoajat 103 miljoonaa dollaria214 miljoonaa dollaria376 miljoonaa dollaria481 miljoonaa dollaria576 miljoonaa dollaria
Muut 19 miljoonaa dollaria63 miljoonaa dollaria149 miljoonaa dollaria259 miljoonaa dollaria373 miljoonaa dollaria
Kaikki yhteensä 207 miljoonaa dollaria698 miljoonaa dollaria1,638 miljoonaa dollaria2,848 miljoonaa dollaria4,106 miljoonaa dollaria
Lähde: Collaborative Research, 1998

Tämä trendi ei ole jäänyt valmistajilta huomaamatta, ja he suuntaavat aktiivisesti tuotteitaan yritysasiakkaille. Aluksi huippuluokan tuotteita Internet-palveluntarjoajille tuottaneet valmistajat alkoivat sisällyttää tuotelinjoihinsa tarjontaa suhteellisen halvalla ja yrityksille riittävällä suoritustasolla. Lisäksi kymmenkunta uutta toimittajaa on ilmoittanut tai julkaissut välimuistipalvelimia, jotka perustuvat alan standardilaitteistoon ja ohjelmisto- esimerkiksi Intel-alustalla olevat palvelimet ilmaisella Squid-välimuistiohjelmistolla - tavoitteena tarjota tuotteita mahdollisimman halvalla.

VÄLITTÄJÄ VÄLImuistina?

Ensimmäiset välimuistipalvelimet toteutettiin yleensä välityspalvelinten pohjalta. Sellaisenaan he toimivat kohdevälittäjinä käyttäjäryhmälle, hyväksyen kaikki pyynnöt ja välittäen ne Internetin määränpäähän. Kaikkien käyttäjien yhteisenä tukiasemana välityspalvelimet ovat osoittautuneet erittäin houkutteleviksi erilaisten lisäpalvelujen toteuttamisessa: sisällön suodatuksessa, käyttäjän tunnistamisessa, tapahtumien kirjaamisessa ja objektien välimuistissa. Palomuurin kanssa välityspalvelin mahdollisti suojatun yhteyden muodostamisen Internetiin.

Yksi ensimmäisistä välimuistia käyttävistä välittäjistä oli Harvest Cache -ohjelmistopalvelin, joka syntyi Advanced Research Projects Agencyn (ARPA), National Science Foundationin, NSF:n ja NASA:n vuosina 1994-1996 rahoittamasta yhteishankkeesta. Sen jälkeen ainakin tusinaa tuotetta on markkinoitu "välimuistin välittäjinä". Erityisesti Netscape Communicationsilla, Microsoftilla ja Novellilla on välimuistia tukevat välityspalvelimet, jotka on integroitu tiiviisti muihin yritystyökaluihinsa. Välimuistin lisäksi heidän tuotteet tarjoavat laajan valikoiman välitystoimintoja, kuten käyttäjien todennusta, sisällön suodatusta, virustarkistusta, suojausta ja tapahtumakirjausta. Microsoftin välityspalvelin toimii Windows NT 4.0:ssa; Netscapen välityspalvelin - perustuu useimpiin UNIX-lajeihin sekä Windows NT:hen; BorderManager FastCache Novellilta - IntranetWaressa, NetWare 4.11:ssä ja NetWare 5:ssä.

Toinen laajasti käytetty kaupallinen välimuistin välittäjä on Squid, National Laboratory for Advanced Network Researchin (NLANR) kehittämä Harvest Cache -laajennus. Ehkä siksi, että Squid syntyi yhteisen ponnistelun tuloksena ympäristössä, jossa standardoidut ja hyväksytyt ohjelmistot ovat tervetulleita ja laajalti käytettyjä, Squid on vakiinnuttanut asemansa Internet-palveluntarjoajien markkinoilla ja sillä on edelleen suhteellisen vahva asennettu kanta.

Konfiguraatioissa, joissa on välimuistipalvelimet, on kaksi pääasiallista haittaa. Ensinnäkin, koska jokaisen käyttäjän selain on konfiguroitava toimimaan välittäjän kautta, palvelinvika aiheuttaa kaikkien käyttäjien Internet-yhteyden katkeamisen. Toiseksi jokaisen käyttäjän selaimen asetusten syöttäminen välittäjän tiedoilla voi olla työvoimavaltaista suurissa yrityksissä ja olennaisesti mahdoton tehtävä Internet-operaattorille.

Voit välttää nämä ongelmat man-in-the-middd-kokoonpanoissa ottamalla käyttöön läpinäkyvän välimuistin verkossasi asentamalla käytäntöä käyttävän reitittimen tai Layer 4 -kytkimen välittämään liikennettä välimuistipalvelimelle tai palvelinryhmälle. Nämä laitteet sieppaavat kaiken HTTP-liikenteen portissa 80 ja ohjaavat sen välimuistiin. Välimuisti suorittaa HTTP-pyynnöt ja palauttaa objektit takaisin selaimeen. Aidosti läpinäkyvän välimuistiratkaisun on tuettava skaalautuvuutta tasapainottamalla kuormitus useiden välimuistipalvelimien välillä sekä varmuuskopiointipalvelimille, jos yksi tai kaikki välimuistipalvelimet eivät ole käytettävissä. Esimerkkejä Layer 4 -kytkentälaitteista ovat Alteon Networksin ACEdirector ja Foundry Networksin ServerIron.

DynaCachen Infolibria-välimuistipalvelin käyttää erilaista lähestymistapaa ja tarjoaa läpinäkyvyyttä ilman erillistä kytkintä tai reititintä. Tämä saavutetaan DynaLink Redirector (DLR) -kytkimellä, joka on omistettu Layer 4 -kytkin, joka on liitäntä DynaCachen kanssa. DLR, olennainen osa yrityksen välimuististrategiaa, sijaitsee verkossa ja välittää Internetiin vain välimuistin puutteet. Yhtiön mukaan tämä strategia voi vähentää reitittimen kuormitusta kahdella kolmasosalla.

OHJELMISTO VS LAITTEISTO

Vuonna 1997 Forrester Research ennusti raportissaan "Why Caching Matters", että Internet-palveluntarjoajat ja yritykset siirtyisivät ohjelmistovälimuistipalvelimista erityisiin välimuistilaitteisiin. Samoin Dataquest totesi heinäkuun 1998 raportissaan, että omistetut laitteet hallitsevat välimuistituotemarkkinoita.

Siksi ei ole yllättävää, että yli puoli tusinaa valmistajaa julkaisi välimuistilaitteita vuonna 1998. He väittävät, että heidän tuotteet tarjoavat paremman suorituskyvyn kuin ohjelmistovastineet, koska käyttöjärjestelmä ja välimuistipalvelin on integroitu tiiviisti toisiinsa ja optimoitu välimuistiin. He väittävät myös, että heidän tuotteitaan on helpompi asentaa ja määrittää ja ne tarjoavat turvallisempia alustoja, koska ne eivät todennäköisesti luo tietoturva-aukkoja hallinnollisten tai konfigurointivirheiden vuoksi. Tyypillisesti ohjelmistovälimuistit, kuten edellä käsitelty välimuistipalvelin, on suunniteltu välityspalvelinta ajatellen, kun taas laitteistovälimuistit on suunniteltu yksinomaan tukemaan raskasta välimuistia. Tästä huolimatta monia välimuistilaitteita voidaan käyttää välityspalvelinkokoonpanoissa.

Network Appliance oli yksi ensimmäisistä, joka tarjosi erillisen välimuistilaitteen. Tätä varten se mukautti NetCache-ohjelmiston laitteistotuotteeseen. Network Appliance osti NetCache-ohjelmiston (ja osti Peter Danzigin, yhden Harvest Projectin pääarkkitehdeistä) yhdessä pienen start-up-yrityksen, Internet Middlewaren kanssa.

Muita vuonna 1998 esiteltyjä välimuistilaitteita ovat Cisco Systemsin Cache Engine, CacheFlow'n CacheFlow ja InfoLibrian DynaCache. Sun Microsystemsin Netra Proxy on esikonfiguroitu UltraSPARC II -tietokoneeseen, vaikka se ei olekaan täysin erillinen laite. Se sisältää Sunin välimuistiohjelmiston ja on optimoitu näitä toimintoja varten.

Viime aikoina markkinoille on ilmestynyt suhteellisen edullisia välimuistilaitteita. Ne perustuvat standardoituihin laitteistoihin ja ohjelmistoihin, ja ne ovat esikonfiguroituja palvelinlaitteita, jotka on suunniteltu tekemään välimuistista yksinkertaisempaa ja edullisempaa. Tämä lähestymistapa voi olla houkutteleva pienille yrityksille tai jopa suurille yrityksille, jotka haluavat hyötyä työryhmävälimuistin eduista, mutta ovat epäröiviä käytettävissä olevien ratkaisujen korkeiden kustannusten ja monimutkaisuuden vuoksi. Näiden tuotteiden hinta liikkuu 2 000 dollarin tuntumassa, kun edellä mainitut ratkaisut maksavat vähintään 7 000 dollaria.

Kolme esimerkkiä edullisista välimuistilaitteista ovat Packetstorm Technologiesin WebSpeed ​​​​ja Cobalt Networksin CacheQube ja CacheRaQ. WebSpeedin vähittäismyyntihinta on 2 100–7 100 dollaria välimuistin koosta riippuen. WebSpeed ​​käyttää Intel-prosessoreita ja ilmaista käyttöjärjestelmää Linux järjestelmä, sekä Squid-välimuistiohjelmisto. Yhtiö lyö vetoa, että asiakkaat arvostavat edullista, esikonfiguroitua laitetta, jonka he voivat asentaa verkkoihinsa vähällä vaivalla. Cobalt Networkin CacheQube ja telineeseen asennettu CacheRaQ ovat skaalattavissa sekä DRAM-kapasiteetin että levytila ja luomalla klusterin useista laitteista. CacheQube maksaa 1 899 dollaria ja CacheRaQ 2 299 tai 2 799 dollaria kokoonpanosta riippuen.

Yrittääkseen vastustaa asiantuntijoiden ennusteita siitä, että dedikoidut välimuistilaitteet hallitsevat markkinoita, Inktomi on julkaissut Traffic Serverin, jonka yhtiö positioi ensisijaisesti Internet-palveluntarjoajille ja suuryrityksille suunnatuksi korkean suorituskyvyn välimuistiratkaisuksi. Sitä vastoin muut ohjelmistovälimuistit keskittyvät välitys- ja suojaustoimintoihin yhtä paljon kuin välimuistitoimintoihin. 30 000 dollaria prosessoria kohden Traffic Serverillä on myös operaattoritason tuotteen hinta.

YHTEENSOPIVUUS JA STANDARDIT

Internet Caching Protocol (ICP) on peräisin Harvest Projectin varhaisesta välimuistitutkimuksesta, ja se määrittelee, kuinka useat IP-välimuistipalvelimet voivat jakaa tietoa Web-objektien äskettäisyydestä ja kuinka ne hakevat objekteja muista välimuistista (toisin kuin objektien hakemista alkuperäisestä). Verkkopalvelin). ICP:n avulla palvelimen järjestelmänvalvojat voivat määrittää välimuistin kyselemään muita välimuistipalvelimia, jotka myös tukevat ICP:tä, nähdäkseen, onko heillä uusimmat tiedot Web-objekteista. Paikallinen välimuisti voi esimerkiksi pyytää ylävirran välimuistia tarkistamaan, onko sillä uudempaa kopiota tiedostosta, ja jos ei, onko se tarkistanut tiedoston iän alkuperäpalvelimelta. Vaikka ylävirran palvelimella ei ole enempää uusi versio tiedosto, hän olisi voinut äskettäin varmistaa, että tiedostoa oli muokattu alkuperäisessä palvelimessa. Päivitysalgoritmista riippuen paikallinen välimuisti voi käyttää näitä tietoja hakeakseen objektin uudemman version alkuperäpalvelimelta tai käyttää sen sijaan paikallista kopiota (katso kuva).

Ylävirran välimuistin kysely lisää latenssia lisääntyneen lähetysetäisyyden ja -ajan vuoksi; Ajansäästö on kuitenkin monissa tapauksissa varsin merkittävä, koska pyynnön ei tarvitse kulkea alkuperäisen objektin kanssa aina palvelimelle asti. Lisäksi objektien tarjoaminen lähellä vastaanottajaa sijaitsevilta ICP-kommunikaatiopalvelimista vähentää Internetin runkoverkon kuormitusta ja vapauttaa kaistanleveyttä koko Internet-yhteisölle. Lähes kaikki välimuistiratkaisut tukevat nykyään ICP:tä.

ICP:n tapaan Caching Array Routing Protocol (CARP) on protokolla välimuistikuorman jakamiseen paikallisen palvelinkannan kesken. Sen on kehittänyt Microsoft ja se toimitettiin World Wide Web Consortiumille (W3C) Internet-standardiehdotuksena. Microsoftin lisäksi noin tusina muuta toimittajaa, mukaan lukien Packetstorm Technologies ja Sun, ovat ilmoittaneet tukevansa CARP:ia.

Cisco kehitti WCCP (Web Cache Communication Protocol) -protokollan, jotta välimuistimoottori voisi kommunikoida reitittimiensä kanssa. Käyttämällä WCCP:tä, Cisco-reititintä iOS-tuki sieppaa selaimista tulevat HTTP-pyynnöt ja ohjaa ne välimuistipalvelimelle tai erilliselle laitteelle. WCCP tukee skaalautuvuutta jakamalla pyynnöt useille välimuistipalvelimille niiden saatavuuden perusteella.

Marraskuussa 1998 Cisco aloitti WCCP:n lisensoinnin muille välimuistituotteiden valmistajille. Inktomi ja Network Appliance ovat ilmoittaneet suunnitelmistaan ​​sisällyttää WCCP-tuki tuotteidensa tuleviin julkaisuihin.

MARKKINAINDIKAATTORIT

Vaikka lukujen suhteen on jonkin verran kiistaa, Internetin välimuistituotteiden markkinoiden odotetaan kasvavan merkittävästi seuraavien neljän vuoden aikana. Collaborative Research ennustaa markkinoiden kasvavan 206 miljoonasta dollarista vuonna 1998 yli 4 miljardiin dollariin vuonna 2002.

Nämä luvut huomioon ottaen ei ole yllättävää, että suuret ohjelmisto- ja laitteistovalmistajat ja -kehittäjät yrittävät käyttää asemaansa tunkeutuakseen välimuistimarkkinoille. Esimerkiksi suuren asennettujen palvelinkäyttöjärjestelmien ansiosta Novell luottaa BorderManagerin tiiviiseen integrointiin muihin tuotteisiinsa herättääkseen yritysasiakkaiden huomion.

Kuten Novell, Microsoft ja Sun kilpailevat hallitsevasta asemasta Internet-ohjelmisto- ja palvelinmarkkinoilla. Niillä molemmilla on suuri asennettu tietokanta Web-palvelimista, ja ne sijoittavat tuotteensa – ja niihin liittyvän välitysominaisuuksien arsenaalin – olennaisina komponentteina integroituun verkkosovellustukiympäristöön. Koska verkkolaitteita on asennettu laajasti, Cache Enginen tiivis integrointi muihin Ciscon verkkokomponentteihin voi auttaa edistämään laajaa käyttöönottoa.

HINTA MITÄ TARVITSET

Kun päätät ottaa välimuistin käyttöön verkossasi, sinulla on valikoima tuotteita ilmaisista 100 000 dollaria tai enemmän maksaviin. Yleensä mitä kalliimpi tuote, sitä tehokkaampi se on.

Hinta-asteikon alemmasta päästä, jossa ohjelmistovälimuistipalvelimet ovat viime aikoina dominoineet, löytyy nyt kymmenkunta välimuistilaitetta. Käyttämällä ilmainen tuote, kuten Squid, joka on saatavilla sekä lähde- että esikäännetyssä muodossa, tarvitset tietokoneen, johon se asennetaan. Tarpeettomien kulujen välttämiseksi voit käyttää olemassa olevia laitteita uudelleen välimuistitehtävien suorittamiseen.

Netscape, Microsoft ja Novell tarjoavat tehokkaita ohjelmistovälimuistipalvelimia, joissa on laaja valikoima välitysominaisuuksia. Heidän tuotteet maksavat noin 1000 dollaria prosessoria kohden. Kuten Squidissä, ratkaisun kokonaiskustannuksia voidaan vähentää käyttämällä olemassa olevaa laitteistoa. Muussa tapauksessa laitteiden hankintakustannukset on sisällytettävä kuluosuuteen.

Phil Keppeler on web-kehittäjä suunnittelu- ja ohjelmointiyrityksessä. Häneen voi ottaa yhteyttä osoitteessa: [sähköposti suojattu].

Tuotteet arvosteltu

Microsoft

Netscape Communications

National Laboratory for Advanced Network Research

Alteon Networks

ACEdirector
http://ircache.nlanr.net/Cache/FAQ/ircache-faq-9.html .

Brian D. Davidson, Ph.D Rutgersin yliopistosta, ylläpitää tietosivua resurssien välimuistista palvelimellaan http://www.cs.rutgers.edu/~davison/Web-caching/. Se sisältää uutisia välimuistista, luettelon ja taulukon välimuistin välittäjistä, bibliografian jne.

Jos haluat lisätietoja Harvest Projectista, asiaankuuluvat linkit tutkimustuloksiin, kokousten pöytäkirjat ja usein kysytyt kysymykset ovat saatavilla osoitteessa: http://www.harvest.transarc.com .

CacheNow on jatkuva kampanja, jolla edistetään laajamittaista välimuistia kaistanleveyden puutteen poistamiseksi ja Internet-infrastruktuurin rajoitusten poistamiseksi. Tietoja siitä on saatavilla osoitteessa http://vancouver-Webpages.com/CacheNow/ .



  • Käännös

Melko yksityiskohtainen ja mielenkiintoinen esitys materiaalista kätköstä ja sen käytöstä. Osa 2 .

Kääntäjältä: ilmoita kirjoitusvirheet ja epätarkkuudet henkilökohtaisella viestillä. Kiitos.

Verkkovälimuisti sijaitsee yhden tai useamman verkkopalvelimen ja asiakkaan tai useiden asiakkaiden välillä ja valvoo saapuvia pyyntöjä ja tallentaa samalla kopiot vastauksista – HTML-sivuja, kuvia ja tiedostoja (tunnetaan yhteisesti nimellä edustus(edustus); noin kääntäjä - käytän sanaa "sisältö" - se ei mielestäni satuta korvaa niin paljon), sillä omia tarpeita. Sitten, jos toinen pyyntö saapuu samanlaisella URL-osoitteella, välimuisti voi käyttää aiemmin tallennettua vastausta sen sijaan, että se kysyisi palvelimelta uudelleen.

On kaksi pääasiallista syytä, miksi verkkovälimuistia käytetään:

1. Lyhennetty odotusaika- Koska pyydetyt tiedot otetaan välimuistista (joka sijaitsee "lähempänä" asiakasta), sisällön vastaanottaminen ja näyttäminen asiakaspuolella vie vähemmän aikaa. Tämä tekee verkosta reagoivamman.

2. Hylkää verkkoliikennettä - sisällön uudelleenkäyttö vähentää asiakkaalle siirrettävän tiedon määrää. Tämä puolestaan ​​säästää rahaa, jos asiakas maksaa liikenteestä, ja pitää kaistanleveysvaatimukset pienempänä ja joustavampana.

Verkkovälimuistien tyypit

Selaimen välimuisti
Jos tutkit minkä tahansa nykyaikaisen verkkoselaimen asetusikkunaa (esim. Internet Explorer, Safari tai Mozilla), huomaat todennäköisesti välimuistin asetusvaihtoehdon. Tämän vaihtoehdon avulla voit valita alueen kovalevy tietokoneellesi tallentaaksesi aiemmin katsotun sisällön. Selaimen välimuisti toimii melko yksinkertaisten sääntöjen mukaan. Se yksinkertaisesti tarkistaa, ovatko tiedot "tuoreita", yleensä kerran istuntoa kohden (eli kerran nykyisessä selainistunnossa).

Tämä välimuisti on erityisen hyödyllinen, kun käyttäjä painaa Takaisin-painiketta tai klikkaa linkkiä nähdäkseen sivun, jota hän juuri katseli. Lisäksi, jos käytät samoja navigointikuvia sivustossasi, ne haetaan selaimen välimuistista lähes välittömästi.

Välityspalvelimen välimuisti
Välityspalvelimen välimuisti toimii samalla periaatteella, mutta paljon suuremmassa mittakaavassa. Välityspalvelimet palvelevat satoja tai tuhansia käyttäjiä; suuret yritykset ja Internet-palveluntarjoajat määrittävät ne usein palomuurissaan tai käyttävät niitä yksittäisiä laitteita(välittäjät).

Koska välityspalvelimet eivät ole osa asiakas- tai lähtöpalvelinta, vaan ovat silti verkkoon päin, pyynnöt on välitettävä niille jollakin tavalla. Yksi tapa on kertoa selaimen asetuksista manuaalisesti, mihin välityspalvelimeen ottaa yhteyttä. Toinen tapa on käyttää sieppausvälityspalvelinta. Tässä tapauksessa välityspalvelimet käsittelevät verkon heille välittämiä verkkopyyntöjä ilman, että asiakkaan tarvitsee määrittää niitä tai edes tietää niiden olemassaolosta.

Välityspalvelimen välimuistit ovat eräänlainen jaettu välimuisti: yhden henkilön palvelemisen sijaan ne toimivat yhdessä suuri numero käyttäjille ja ovat siksi erittäin hyviä vähentämään viivettä ja verkkoliikennettä. Lähinnä siksi, että suosittua sisältöä pyydetään monta kertaa.

Yhdyskäytävän välimuisti
Yhdyskäytävät, jotka tunnetaan myös nimellä "käänteinen välityspalvelinvälimuisti" tai "korvausvälimuisti", ovat myös välittäjiä, mutta sen sijaan, että järjestelmänvalvojat käyttäisivät niitä kaistanleveyden säästämiseen, verkkovastaavat käyttävät niitä yleensä tehdäkseen sivustoistaan ​​skaalautuvampia, luotettavampia ja tehokkaampia.

Pyynnöt voidaan välittää yhdyskäytäville useilla tavoilla, mutta tyypillisesti käytetään jonkinlaista kuormantasainta.

Sisällönjakeluverkot (CDN) jakavat yhdyskäytäviä kaikkialle Internetiin (tai johonkin sen osaan) ja palvelevat välimuistissa olevaa sisältöä kiinnostuneille verkkosivustoille. Speedera ja Akamai ovat esimerkkejä CDN:istä.

Tämä opetusohjelma keskittyy ensisijaisesti selaimen välimuistiin ja välityspalvelimiin, mutta osa tiedoista on olennaista myös yhdyskäytävistä kiinnostuneille.

Miksi minun pitäisi käyttää sitä

Välimuisti on yksi Internetin väärinymmärretyimmistä tekniikoista. Erityisesti verkkovastaavat pelkäävät menettävänsä sivustonsa hallinnan, koska välityspalvelimet voivat "piilottaa" käyttäjänsä, mikä vaikeuttaa liikenteen seurantaa.

Valitettavasti heille (verkkovastaaville), vaikka verkkovälimuistia ei olisikaan, Internetissä on liian monia muuttujia, jotta sivustojen omistajat voivat saada tarkan kuvan siitä, kuinka käyttäjät ovat vuorovaikutuksessa sivuston kanssa. Jos tämä on suuri ongelma sinulle, tämä opas opettaa sinulle, kuinka saat tarvitsemasi tilastot tekemättä sivustostasi "välimuistia vihaava".

Toinen ongelma on, että välimuisti saattaa tallentaa sisältöä, joka on vanhentunut tai vanhentunut.

Toisaalta, jos suunnittelet verkkosivustosi vastuullisesti, välimuisti voi auttaa enemmän nopea lataus ja palvelimen ja Internet-yhteyden kuormituksen ylläpitäminen hyväksyttävissä rajoissa. Ero voi olla dramaattinen: välimuistia sisältämättömän sivuston latautuminen voi kestää muutaman sekunnin; välimuistin käytön edut voivat saada sen näyttämään välittömältä. Käyttäjät arvostavat sivuston nopeaa latausaikaa ja saattavat vierailla siellä useammin.

Ajattele asiaa näin: monet suuret Internet-yritykset käyttävät miljoonia dollareita perustaakseen palvelimia ympäri maailmaa kopioimaan sisältöä, jotta käyttäjät voivat saada tiedon mahdollisimman nopeasti. Välimuisti tekee saman puolestasi ja on paljon lähempänä loppukäyttäjää.

CDN:t ovat tästä näkökulmasta mielenkiintoinen kehitys, koska toisin kuin monet välityspalvelimen välimuistit, niiden yhdyskäytävät on kohdistettu välimuistiin tallennettavan verkkosivuston etuihin. Kuitenkin, vaikka käytät CDN:ää, sinun on silti otettava huomioon, että selaimessa on välityspalvelin ja sitä seuraava välimuisti.

Yhteenvetona voidaan todeta, että välityspalvelimia ja selaimen välimuistia käytetään halusitpa tai et. Muista, että jos et määritä sivustoasi välimuistiin oikein, se käyttää välimuistin oletusasetuksia.

Kuinka verkkovälimuisti toimii

Kaikilla välimuistityypeillä on erityiset säännöt, joiden avulla ne määrittävät, milloin välimuistista on otettava sisältöä, jos se on saatavilla. Jotkut näistä säännöistä ovat protokollien (HTTP 1.0/HTTP 1.1) asettamia, osan välimuistin ylläpitäjät (selaimen käyttäjät tai välityspalvelimen järjestelmänvalvojat).

Yleisesti ottaen nämä ovat eniten yleiset säännöt(älä huoli, jos et ymmärrä yksityiskohtia, ne selitetään alla):

  1. Jos vastausotsikot kehottavat välimuistia olemaan tallentamatta niitä, se ei tallenna niitä.
  2. Jos pyyntö on valtuutettu tai suojattu (eli HTTPS), sitä ei tallenneta välimuistiin.
  3. Välimuistissa olevaa sisältöä pidetään "tuoreena" (eli se voidaan lähettää asiakkaalle tarkistamatta alkuperäpalvelimelta), jos:
    • Siinä on voimassaoloaika tai muu otsikko, joka ohjaa käyttöikää, eikä se ole vielä vanhentunut.
    • Jos välimuisti on äskettäin tarkistanut sisällön ja sitä on muokattu melko kauan sitten.
    Tuore sisältö otetaan suoraan välimuistista tarkistamatta palvelimelta.
  4. Jos sisältö on vanhentunutta, alkuperäpalvelinta pyydetään vahvistamaan se tai kertomaan välimuistille, onko olemassa oleva kopio edelleen ajan tasalla.
  5. Tietyissä olosuhteissa – esimerkiksi offline-tilassa – välimuisti saattaa säilyttää vanhentuneet vastaukset tarkistamatta niitä alkuperäpalvelimelta.
Jos vastauksessa ei ole validaattoria (ETag- tai Last-Modified-otsikkoa) eikä se sisällä mitään selkeää tuoreustietoa, sisältöä ei yleensä (mutta ei aina) pidetä välimuistiin kelpaamattomana.

Tuoreus(tuoreus) ja validointi(validointi) ovat tärkeimmät tavat, joilla välimuisti toimii sisällön suhteen. Tuore sisältö on saatavilla välittömästi välimuistista; Kelvollinen sisältö estää kaikkien pakettien lähettämisen uudelleen, jos sitä ei ole muutettu.

Aiheeseen liittyviä julkaisuja