Over Azure Cache voor Redis

Azure Cache voor Redis biedt gegevensopslag in het geheugen op basis van de Redis-software. Redis verbetert de prestaties en schaalbaarheid van een toepassing die veel gebruikmaakt van back-endgegevensopslag. Het kan grote hoeveelheden toepassingsaanvragen verwerken door veelgebruikte gegevens in het servergeheugen te bewaren, die snel naar kunnen worden geschreven en gelezen. Redis is een essentiële oplossing voor gegevensopslag met lage latentie en hoge doorvoer voor moderne toepassingen.

Azure Cache voor Redis biedt zowel redis opensource (OSS Redis) als een commercieel product van Redis Labs (Redis Enterprise) aan als een beheerde service. Het biedt veilige en toegewezen Redis-serverinstanties en volledige Redis API-compatibiliteit. De service wordt beheerd door Microsoft, gehost op Azure en kan worden gebruikt door elke toepassing binnen of buiten Azure.

Azure Cache voor Redis kan worden gebruikt als gedistribueerde gegevens- of inhoudscache, sessieopslag, berichtenbroker en meer. Het kan worden geïmplementeerd als een zelfstandige versie. Het kan ook samen met andere Azure-databaseservices worden geïmplementeerd, zoals Azure SQL of Cosmos DB.

Belangrijke scenario's

Azure Cache voor Redis verbetert de prestaties van toepassingen door veelgebruikte architectuurpatronen van toepassingen te ondersteunen. Enkele van de meest voorkomende zijn de volgende patronen:

Patroon Beschrijving
Gegevenscache Databases zijn vaak te groot om rechtstreeks in een cache te laden. Het is gebruikelijk om het cache-aside-patroon te gebruiken om alleen gegevens in de cache te laden als dat nodig is. Als het systeem wijzigingen aanbrengt in de gegevens, kan het ook de cache bijwerken, die vervolgens wordt gedistribueerd naar andere clients. Het systeem kan bovendien een vervaldatum instellen voor gegevens of een verwijderingsbeleid gebruiken om gegevensupdates in de cache te activeren.
Inhoudscache Veel webpagina's worden gegenereerd op basis van sjablonen die gebruikmaken van statische inhoud, zoals kopteksten, voetteksten en banners. Deze statische items worden meestal niet vaak bijgewerkt. Cache in het geheugen biedt snelle toegang tot statische inhoud vergeleken met back-endgegevensarchieven. Dit patroon vermindert de verwerkingstijd en serverbelasting, waardoor webservers sneller kunnen reageren. Zo hebt u minder servers nodig om belasting te verwerken. Azure Cache voor Redis biedt de Redis Output Cache Provider om dit patroon te ondersteunen met ASP.NET.
Sessieopslag Dit patroon wordt vaak gebruikt met winkelwagentjes en andere gebruikersgeschiedenisgegevens die een webtoepassing kan koppelen aan gebruikerscookies. Te veel opslaan in een cookie kan een negatief effect hebben op de prestaties naarmate de cookiegrootte toeneemt en bij elke aanvraag wordt doorgegeven en gevalideerd. Een gangbare oplossing is om de cookie als sleutel te gebruiken voor het opvragen van gegevens in een database. Het gebruik van een cache in het geheugen zoals Azure Cache voor Redis om gegevens te koppelen aan een gebruiker, is veel sneller dan interactie met een volledige relationele database.
Wachtrij met taken en berichten Toepassingen voegen taken vaak toe aan een wachtrij als er tijd nodig is om de bewerkingen van een bepaalde aanvraag uit te voeren. Langdurige bewerkingen worden in de wachtrij gezet en op volgorde verwerkt, vaak door een andere server. Deze methode van werk uitstellen heet taken in de wachtrij plaatsen. Azure Cache voor Redis biedt een gedistribueerde wachtrij om dit patroon in te schakelen in uw toepassing.
Gedistribueerde transacties Toepassingen vereisen soms een reeks opdrachten voor een back-endgegevensopslag die moeten worden uitgevoerd als één atomische bewerking. Alle opdrachten moeten slagen of alle moet worden teruggezet naar de beginstatus. Azure Cache voor Redis ondersteunt het uitvoeren van een batch met opdrachten als één transactie.

Redis-versies

Azure Cache voor Redis oss Redis versie 4.0.x en 6.0.x. We hebben besloten Redis 5.0 over te slaan om u te voorzien van de nieuwste versie. Voorheen Azure Cache voor Redis één Redis-versie onderhouden. In de toekomst biedt het een nieuwere, belangrijke release-upgrade en ten minste één oudere stabiele versie. U kunt kiezen welke versie het beste werkt voor uw toepassing.

Servicelagen

Azure Cache voor Redis is beschikbaar in deze lagen:

Laag Beschrijving
Basic Een OSS Redis-cache die op één VM wordt uitgevoerd. Deze laag heeft geen service level agreement (SLA) en is ideaal voor ontwikkeling/test en niet-essentiële werkbelastingen.
Standard Een OSS Redis-cache die wordt uitgevoerd op twee VM’s in een gerepliceerde configuratie.
Premium Krachtige OSS Redis-caches. Deze laag biedt hogere doorvoer, lagere latentie, betere beschikbaarheid en meer functies. Premium caches worden geïmplementeerd op krachtigere VM's in vergelijking met de VM's voor Basic- of Standard-caches.
Enterprise Krachtige caches worden mogelijk gemaakt door de Redis Enterprise-software van Redis Labs. Deze laag ondersteunt Redis-modules, waaronder RediSearch, RedisBloom en RedisTimeSeries. Bovendien biedt het een nog hogere beschikbaarheid dan de Premium laag.
Enterprise Flash Rendabele grote caches mogelijk gemaakt door Redis Enterprise-software van Redis Labs. Deze laag breidt Redis-gegevensopslag uit naar niet-vluchtig geheugen, wat goedkoper is dan DRAM, op een VM. Dit vermindert de totale kosten per GB geheugen.

Vergelijking van functies

Prijzen van Azure Cache voor Redis bevat een gedetailleerde vergelijking van elke laag. In de volgende tabel worden de functies beschreven die door elke laag worden ondersteund:

Omschrijving Basic Standard Premium Enterprise Enterprise Flash
Service Level Agreement (SLA) -
Gegevensversleuteling
Netwerkisolatie
Schalen - -
OSS-clustering - -
Gegevenspersistentie - - Preview Preview
Zoneredundantie - -
Geo-replicatie - - Preview Preview
Redis-modules - - - -
Import/export - -
Opnieuw opstarten - -
Geplande updates - -

De juiste laag kiezen

Houd rekening met de volgende opties bij het kiezen van Azure Cache voor Redis laag:

  • Geheugen: De lagen Basic en Standard bieden 250 MB – 53 GB; de laag Premium 6 GB - 1,2 TB; de Enterprise-lagen 12 GB - 14 TB. Als u een cache van een Premium-laag wilt maken die groter is dan 120 GB, kunt u Redis OSS-clustering gebruiken. Zie Prijzen van Azure Cache voor Redis voor meer informatie. Zie Clustering voor een Premium Azure Cache voor Redis configureren voor meer informatie.
  • Prestaties: caches in de Premium- en Enterprise-lagen worden geïmplementeerd op hardware met snellere processors, wat betere prestaties biedt in vergelijking met de basic- of Standard-laag. Premium caches hebben een hogere doorvoer en een lagere latentie. Zie Prestaties van Azure Cache voor Redis voor meer informatie.
  • Toegewezen kerngeheugen voor Redis-server: Alle caches behalve C0 voeren toegewezen VM-kernen uit. Redis gebruikt per ontwerp slechts één thread voor de verwerking van opdrachten. Azure Cache voor Redis gebruikt andere kernen voor I/O-verwerking. Het gebruik van verschillende kerngeheugens verbetert de doorvoerprestaties, ook al maakt het geen lineaire schaling mogelijk. Daarnaast worden grotere VM-grootten meestal met hogere bandbreedtelimieten geleverd dan kleinere. Zo kunt u oververzadiging van het netwerk voorkomen, waardoor er time-outs optreden in uw toepassing.
  • Netwerkprestaties: Als u een werkbelasting hebt waarvoor hoge doorvoer is vereist, bieden de Premium- of Enterprise-lagen meer bandbreedte vergeleken met Standard of Basic. Daarnaast hebben grotere caches in elke laag meer bandbreedte vanwege de onderliggende virtuele machine die als host fungeert voor de cache. Zie Prestaties van Azure Cache voor Redis voor meer informatie.
  • Maximum aantal clientverbindingen: de Premium- en Enterprise-lagen bieden het maximum aantal clients dat verbinding kan maken met Redis, met een groter aantal verbindingen voor grotere caches. Clustering verhoogt de totale hoeveelheid netwerkbandbreedte die beschikbaar is voor een geclusterde cache.
  • Hoge beschikbaarheid: Azure Cache voor Redis biedt meerdere opties voor hoge beschikbaarheid. Het garandeert dat een Standard-, Premium-, of Enterprise-cache beschikbaar is volgens onze SLA. De SLA heeft alleen betrekking op connectiviteit met de cache-eindpunten. De SLA biedt geen bescherming tegen gegevensverlies. We raden u aan de Redis-functie voor gegevenspersistence te gebruiken in de lagen Premium en Enterprise om de tolerantie tegen gegevensverlies te vergroten.
  • Gegevens persistentie: met de Premium- en Enterprise-lagen kunt u de cachegegevens persistent maken in een Azure Storage-account en een beheerde schijf. Onderliggende problemen met de infrastructuur kunnen leiden tot mogelijk gegevensverlies. We raden u aan de Redis-functie voor gegevenspersistence in deze lagen te gebruiken om de tolerantie tegen gegevensverlies te vergroten. Azure Cache voor Redis biedt zowel RDB- als AOF-opties (preview). Gegevens persistentie kan worden ingeschakeld via Azure Portal en CLI. Zie Persistentie Premium configureren voor een Premium Azure Cache voor Redis voor de Premium Azure Cache voor Redis.
  • Netwerkisolatie: Azure Private Link en Virtual Network (VNET)-implementaties bieden verbeterde beveiliging en verkeersisolatie voor uw Azure Cache voor Redis. Met VNET kunt u de toegang verder beperken via beleid voor netwerktoegangsbeheer. Zie voor meer informatie Azure Cache voor Redis met Azure Private Link en Hoe u Virtual Network-ondersteuning kunt configureren voor een Premium Azure Cache voor Redis.
  • Redis-modules: Enterprise-lagen ondersteunen RediSearch, RedisBloom en RedisTimeSeries. Met deze modules worden nieuwe gegevenstypen en functionaliteit toegevoegd aan Redis.

U kunt uw cache schalen van de Basic-laag tot aan Premium, nadat deze is gemaakt. Omlaag schalen naar een lagere laag wordt momenteel niet ondersteund. Zie voor stapsgewijze instructies De schaal aanpassen van Azure Cache voor Redis en Een schaalbewerking automatiseren.

Speciale overwegingen voor Enterprise-lagen

De Enterprise-lagen zijn afhankelijk van Redis Enterprise, een commerciële variant van Redis van Redis Labs. Klanten verkrijgen en betalen voor een licentie voor deze software via een Azure Marketplace aanbieding. Azure Cache voor Redis beheert de licentieverwerving, zodat u dit niet afzonderlijk hoeft te doen. Als u wilt kopen op Azure Marketplace, moet u over de volgende vereisten beschikken:

  • Uw Azure-abonnement heeft een geldig betaal middel. Azure-tegoeden of gratis MSDN-abonnementen worden niet ondersteund.
  • Uw organisatie staat Azure Marketplace-aankopen toe.
  • Als u een privé Marketplace gebruikt, moet deze de Redis Labs Enterprise-aanbieding bevatten.

Belangrijk

Azure Cache voor Redis Enterprise vereist standaardnetwerk load balancers die afzonderlijk van de cache-exemplaren zelf in rekening worden gebracht. Zie prijzen voor Load Balancer meer informatie. Als een Enterprise-cache is geconfigureerd voor meerdere Beschikbaarheidszones, wordt de gegevensoverdracht gefactureerd tegen de standaardtarieven voor netwerkbandbreedte vanaf 1 juli 2022.

Daarnaast voegt gegevens persistentie Managed Disks. Het gebruik van deze resources is gratis tijdens de openbare preview van Enterprise-gegevens persistentie. Dit kan veranderen wanneer de functie algemeen beschikbaar komt.

Volgende stappen