Läs mer om Redis för Java- och Spring Boot-program

Slutförd

När din Azure Cache for Redis-instans distribueras läser du följande avsnitt för att lära dig mer om följande tekniker:

  • Redis och Azure Cache för Redis.
  • Redis med Java- och Spring Boot-program.
  • Spring Data Redis distribuerad cache.

Redis och Azure Cache för Redis

Redis är en BSD-licensierad, öppen källkod, distribuerad datalagring i minnet med valfri hållbarhet som fungerar som en cache och meddelandebroker. Redis är en av de mest populära nyckelvärdesdatabaserna, med enkel användning, prestanda och skalbarhet som gör det till ett utmärkt val för programutvecklare.

Azure Cache for Redis är en hanterad version av Redis som Azure underhåller och fungerar i molnet. Azure Cache for Redis erbjuder alla fördelar med Redis, inklusive högt dataflöde och prestanda för att hantera miljontals begäranden per sekund. Azure ger också fördelarna med en hanterad molntjänst, till exempel automatiska korrigeringar, uppdateringar, skalning och etablering.

Azure Cache for Redis erbjuder flera tjänstnivåer. De avancerade nivåerna tillhandahåller klustring, geo-replikering och hög tillgänglighet för de mest kritiska arbetsbelastningarna.

Användningsfall för Azure Cache for Redis

Redis och Azure Cache for Redis tillhandahåller följande huvudsakliga användningsfall:

  • En distribuerad cache påskyndar program som är beroende av SQL-databaser. Redis kan sänka kostnaden för ett program eftersom det är billigare att skala ett Redis-kluster än att skala en databas.
  • Ett HTTP-sessionsdatalager lagrar sessionsdata, vilket möjliggör skalning av sessionsbaserade program. Program som använder JavaServer Faces (JSF) eller som lagrar säkerhetsdata i användarsessionen använder vanligtvis den här mekanismen.
  • En meddelandekö lösning implementerar publicerings-/prenumerations- eller köarkitekturer.

Använda Redis med Java

Redis tillhandahåller inte något officiellt bibliotek för Java-utvecklare, men det finns flera bibliotek med öppen källkod. Ett av dina viktigaste beslut som Java-utvecklare är att välja det bibliotek som bäst passar dina behov. De mest populära är följande bibliotek.

  • Jedis är det mest använda biblioteket och är enkelt och lätt att använda.
  • Lettuce är det bibliotek som den här modulen använder, eftersom den levereras med Spring Data för Redis. Lettuce har bra asynkront stöd, vilket är viktigt om du vill skapa ett reaktivt Spring-program.
  • Redisson är den mest avancerade Redis-klienten. Du kan använda Redisson som en vilolägescachen på andra nivån om du behöver den funktionen.

Använda Spring Data Redis för att skapa en distribuerad cache

För att skapa en distribuerad cache med hjälp av Redis med Spring Boot, vanligtvis med Spring Initializr, utför du tre huvuduppgifter:

  1. Lägg till Spring Data Redis-biblioteket i ditt program.
  2. Konfigurera din application.yml-fil för att ansluta till din Azure Cache for Redis-instans.
  3. Koda affärslogik med Spring Data Redis för att lagra och hämta data från cacheminnet.

Den aktuella modulen använder Salladsbiblioteket, men du behöver inte använda biblioteket direkt om du inte behöver avancerad konfiguration. Spring Data hanterar dataåtkomstkoden med hjälp av en mekanism som de flesta Spring-utvecklare bör känna till. Du kan också använda Spring Data för att komma åt SQL-databaser med hjälp av Java Persistence API (JPA) och för att komma åt NoSQL-databaser som MongoDB.

Spring Data kräver att du skapar följande klasser:

  • En Java-böna för att lagra dina data. Du kommenterar klassen med @RedisHash Java-kommentar för att lagra och hämta Redis-data via en specifik nyckel.

  • Ett Spring-repository. Den här lagringsplatsen är en specifik Java-klass som kan utföra crud-åtgärder (database create, retrieve, update, delete) på Java-bönan som lagrar data. Den här klassen kan till exempel lagra en instans av bönan eller hämta en lista med bönor.

    Du kan injicera detta Spring-repository i vilken standard Spring-böna som helst. Du kan till exempel mata in lagringsplatsen i en Spring MVC REST-styrenhet som lagrar och kommer åt lagringsplatsens data.

Gå vidare till nästa enhet för att skapa ett Spring Boot-program med en distribuerad cache som använder Spring Data Redis. Du kan skapa programmet medan du väntar på att Azure Cache for Redis-cachen ska slutföra distributionen.