Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät · Oppitunti

Springin Cache-abstraktio

Tallentakaa metodien tuloksia välimuistiin annotaatioilla.

Oppitunti 1/413 vaihetta

Springin Cache-abstraktio on ilmainen Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät-kurssilla on yhteensä 4 oppituntia.

Miksi välimuistia käytetään

Välimuisti tallentaa kalliiden toimintojen tulokset, jotta toistuvat kutsut palauttavat tuloksen heti muistista sen sijaan, että tulos laskettaisiin tai kysely suoritettaisiin uudelleen.

  • Pienempi viive
  • Vähemmän kuormitusta tietokannalle
  • Parempi suorituskyky

Välimuistiabstraktio

Spring tarjoaa välimuistiabstraktion – yhtenäisen rajapinnan monille taustajärjestelmille (muisti, Redis, Caffeine). Merkitsette metodit annotaatioilla, ja Spring huolehtii tallennuksesta.

Välimuistien käyttöönotto

Lisätkää @EnableCaching konfiguraatioluokkaan ottaaksenne annotaatioiden käsittelyn käyttöön.

@Configuration
@EnableCaching
public class CacheConfig {
}

CacheManager

CacheManager hallinnoi nimettyjä välimuisteja. Spring Boot määrittää sellaisen automaattisesti luokkapolun sisällön perusteella.

@Autowired
CacheManager cacheManager;

Cache productCache = cacheManager.getCache("products");

Oletusarvoinen muistipohjainen välimuisti

Jos luokkapolulla ei ole välimuistikirjastoa, Spring Boot käyttää yksinkertaista kartan varaan rakennettua ConcurrentMapCacheManager-toteutusta.

Nimetyt välimuistit

Kukin välimuistia käyttävä metodi kohdistuu nimettyyn välimuistiin. Nimien avulla välimuisteja voi säätää ja tyhjentää toisistaan riippumatta.

@Cacheable("products")
public Product findById(Long id) {
    return repository.findById(id).orElseThrow();
}

Miten välimuistiosuma toimii

Kutsun yhteydessä Spring muodostaa avaimen ja tarkistaa välimuistin: jos arvo löytyy (kyseessä on osuma), tallennettu arvo palautetaan ja metodin runko ohitetaan. Jos arvoa ei löydy (huti), metodi suoritetaan ja tulos tallennetaan.

Välimuistiavaimet

Oletusarvoisesti avain johdetaan metodin argumenteista. Voitte korvata sen SpEL-lausekkeella.

@Cacheable(value = "products", key = "#id")
public Product findById(Long id) { ... }

Palveluntarjoajan valinta

Lisätkää kirjasto, jos haluatte vaihtaa taustajärjestelmää automaattisesti: Caffeine nopeaan paikalliseen välimuistiin ja Redis jaettuun hajautettuun välimuistiin.

// build.gradle for Caffeine
implementation "com.github.ben-manes.caffeine:caffeine"

Caffeninen määrittäminen

Caffeine tukee kokorajoituksia ja vanhenemista ominaisuuksien avulla.

# application.properties
spring.cache.cache-names=products
spring.cache.caffeine.spec=maximumSize=500,expireAfterWrite=600s

Milloin välimuistia ei pidä käyttää

Välimuisti sopii paljon luettavalle, hitaasti muuttuvalle datalle. Välttäkää sitä nopeasti muuttuville arvoille tai tilanteissa, joissa vanhentuneita lukemia ei hyväksytä ilman asianmukaista poistoa.

Pikatarkistus

Testatkaa, miten hyvin ymmärrätte välimuistiabstraktion.

Kertaus

Opitte välimuistiabstraktion:

  • @EnableCaching ottaa ominaisuuden käyttöön
  • CacheManager hallinnoi nimettyjä välimuisteja
  • Oletusarvoinen taustajärjestelmä on muistissa oleva ConcurrentMap
  • Vaihda Caffeineen tai Redisiin lisäämällä vastaava kirjasto
Aloita maksutta

Opi Java tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
24
Oppitunnit
93

Usein kysytyt kysymykset

Onko oppitunti ”Springin Cache-abstraktio” ilmainen?

Kyllä – oppitunnin ”Springin Cache-abstraktio” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät-kurssin, päivitä CoddyKit PROhon. Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Springin Cache-abstraktio”?

Tallentakaa metodien tuloksia välimuistiin annotaatioilla. Harjoittelet Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.

Kuinka kauan ”Springin Cache-abstraktio”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät-oppitunnilla?

Kyllä. Jokainen Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Springin Cache-abstraktio
  2. @Cacheable, @CachePut, @CacheEvict
  3. Redis välimuistipalveluna
  4. Välimuistin TTL ja mitätöinti
← Takaisin: Spring Boot 4 -mikropalvelut ja REST-sovellusliittymät