Veelgestelde vragen over Azure cache voor redis-ontwikkeling

In dit artikel vindt u antwoorden op veelgestelde vragen over het ontwikkelen van Azure-cache voor redis.

Veelgestelde vragen en antwoorden

In deze sectie worden de volgende veelgestelde vragen behandeld:

Hoe kan ik aan de slag met Azure cache voor redis?

Er zijn verschillende manieren om aan de slag te gaan met Azure cache voor redis.

Als u nog geen Azure-account hebt, kunt u het volgende doen:

Wat doen de configuratie opties voor stack Exchange. redis?

Stack Exchange. redis heeft veel opties. In deze sectie vindt u enkele van de algemene instellingen. Zie stack Exchange. redis-configuratievoor meer gedetailleerde informatie over de opties voor stack Exchange. redis.

ConfigurationOptions Beschrijving Aanbeveling
AbortOnConnectFail Als deze eigenschap is ingesteld op True, wordt er geen verbinding gemaakt na een netwerk fout. Stel deze waarde in op False en laat stack Exchange. redis automatisch opnieuw verbinding maken.
ConnectRetry Het aantal keren dat verbindings pogingen moeten worden herhaald tijdens de eerste verbinding. Raadpleeg de volgende opmerkingen voor hulp.
ConnectTimeout Time-out in MS voor verbindings bewerkingen. Raadpleeg de volgende opmerkingen voor hulp.

Meestal zijn de standaard waarden van de client voldoende. U kunt de opties aanpassen op basis van uw werk belasting.

  • Nieuwe pogingen

    • De algemene richt lijnen voor ConnectRetry en ConnectTimeout zijn snel en opnieuw proberen. Deze richt lijnen zijn gebaseerd op uw werk belasting en hoe lang het duurt voordat uw client een redis-opdracht verzendt en een antwoord ontvangt.
    • Laat stack Exchange. redis automatisch opnieuw verbinding maken in plaats van de verbindings status te controleren en zelf verbinding te maken. Vermijd het gebruik van de eigenschap ConnectionMultiplexer. IsConnected.
    • Snowballing: soms is het mogelijk dat u een probleem ondervindt waarbij u het opnieuw probeert en de nieuwe pogingen Snowball en nooit herstellen. Als snowballing zich voordoet, kunt u het beste een exponentiële uitstel-algoritme gebruiken, zoals beschreven in algemene richt lijnen voor opnieuw proberen die worden gepubliceerd door de micro soft-patronen & practices-groep.
  • Time-outwaarden

    • Denk aan uw werk belasting en stel de waarden dienovereenkomstig in. Als u grote waarden opslaat, stelt u de time-out in op een hogere waarde.
    • Stel deze waarde AbortOnConnectFail in op False en laat stack Exchange. redis opnieuw verbinding maken.
    • Gebruik één ConnectionMultiplexer-exemplaar voor de toepassing. U kunt een LazyConnection gebruiken om één exemplaar te maken dat wordt geretourneerd door een eigenschap Connection, zoals wordt weer gegeven in verbinding maken met de cache met behulp van de klasse ConnectionMultiplexer.
    • Stel de ConnectionMultiplexer.ClientName eigenschap in op een unieke naam voor het app-exemplaar voor diagnostische doel einden.
    • Gebruik meerdere ConnectionMultiplexer instanties voor aangepaste werk belastingen.
      • U kunt dit model volgen als uw toepassing variërend wordt geladen. Bijvoorbeeld:
      • U kunt één multiplexer voor het omgaan met grote sleutels.
      • U kunt één multiplexer voor het omgaan met kleine sleutels hebben.
      • U kunt verschillende waarden instellen voor verbindingstime-outs en pogings logica voor elke ConnectionMultiplexer die u gebruikt.
      • Stel de ClientName eigenschap in op elke multiplexer om te helpen met diagnostische gegevens.
      • Deze richt lijnen kunnen leiden tot meer gestroomlijnde latentie per ConnectionMultiplexer .

Welke Azure-cache voor redis-clients kan ik gebruiken?

Een van de fantastische dingen over redis is dat er veel clients zijn die veel verschillende ontwikkelings talen ondersteunen. Zie redis-clientsvoor een actuele lijst met clients. Zie Azure cache gebruiken voor redis en de artikelen in de inhouds opgave voor meer zelf studies over verschillende talen en clients.

Hostnaam, poorten en toegangssleutels ophalen uit Azure Portal

Cache-clients hebben de hostnaam, poorten en sleutels van de cache nodig om verbinding te maken met een Azure Cache for Redis-instantie. Sommige clients kunnen enigszins andere namen gebruiken om naar deze items te verwijzen. U kunt de hostnaam, poorten en toegangssleutels ophalen uit Azure Portal.

  • Als u de toegangssleutels wilt ophalen, selecteert u in de linkernavigatie van de cache de optie Toegangssleutels.

    Sleutels van Azure Cache voor Redis

  • Als u de hostnaam en poorten wilt ophalen, selecteert u in de linkernavigatie van de cache de optie Eigenschappen. De hostnaam heeft de indeling <DNS name>.redis.cache.windows.net.

    Eigenschappen van Azure Cache voor Redis

Is er een lokale emulator voor Azure cache voor redis?

Er is geen lokale emulator voor Azure cache voor redis, maar u kunt de MSOpenTech-versie van redis-server.exe uitvoeren vanaf de opdracht regel Programma's redis op uw lokale computer en er verbinding mee maken om een vergelijk bare ervaring te krijgen met een lokale cache-emulator, zoals wordt weer gegeven in het volgende voor beeld:

private static Lazy<ConnectionMultiplexer>
    lazyConnection = new Lazy<ConnectionMultiplexer> (() =>
    {
        // Connect to a locally running instance of Redis to simulate
        // a local cache emulator experience.
        return ConnectionMultiplexer.Connect("127.0.0.1:6379");
    });

public static ConnectionMultiplexer Connection
{
    get
    {
        return lazyConnection.Value;
    }
}

U kunt eventueel een bestand redis. conf configureren dat meer nauw keurig overeenkomt met de standaard cache-instellingen voor uw online Azure-cache voor redis, indien gewenst.

Hoe kan ik redis-opdrachten uitvoeren?

U kunt elk van de opdrachten die worden weer gegeven op redis opdrachten gebruiken, met uitzonde ring van de opdrachten die worden weer gegeven op redis-opdrachten die niet worden ondersteund in azure cache voor redis. U hebt verschillende opties om redis-opdrachten uit te voeren.

  • Als u een Standard-of Premium-cache hebt, kunt u redis-opdrachten uitvoeren met behulp van de redis-console. De redis-console biedt een veilige manier om redis-opdrachten uit te voeren in de Azure Portal.
  • U kunt ook de redis-opdracht regel Programma's gebruiken. Als u deze wilt gebruiken, voert u de volgende stappen uit:
  • Down load de redis-opdracht regel Programma's.
  • Verbinding maken met de cache met behulp van redis-cli.exe . Pass het cache-eind punt met behulp van de-h-switch en de sleutel met-a zoals wordt weer gegeven in het volgende voor beeld:
  • redis-cli -h <Azure Cache for Redis name>.redis.cache.windows.net -a <key>

Notitie

De opdracht regel Programma's voor redis werken niet met de TLS-poort, maar u kunt een hulp programma gebruiken stunnel om de hulpprogram ma's veilig te verbinden met de TLS-poort door de instructies te volgen in het opdracht regel programma redis gebruiken met Azure cache for redis .

Waarom is Azure cache voor redis geen referentie voor een MSDN Class-bibliotheek?

Microsoft Azure cache voor redis is gebaseerd op de populaire open-source gegevens opslag in het geheugen, redis. Het kan worden gebruikt door een groot aantal redis-clients voor veel programmeer talen. Elke client heeft zijn eigen API die aanroepen naar de Azure-cache voor redis-exemplaar met behulp van redis-opdrachten.

Omdat elke client verschilt, is er niet één gecentraliseerde klassen verwijzing op MSDN en houdt elke client zijn eigen referentie documentatie bij. Naast de referentie documentatie zijn er verschillende zelf studies die laten zien hoe u aan de slag gaat met Azure cache voor redis met behulp van verschillende talen en cache-clients. Voor toegang tot deze zelf studies raadpleegt u Azure cache gebruiken voor redis en de artikelen in de inhouds opgave op hetzelfde niveau.

Kan ik Azure cache gebruiken voor redis als een PHP-sessie cache?

Ja, als u Azure cache voor redis wilt gebruiken als een PHP-sessie cache, geeft u de connection string op voor uw Azure-cache voor redis-instantie in session.save_path .

Belangrijk

Wanneer u Azure cache gebruikt voor redis als een PHP-sessie cache, moet u de URL coderen die wordt gebruikt om verbinding te maken met de cache, zoals wordt weer gegeven in het volgende voor beeld:

session.save_path = "tcp://mycache.redis.cache.windows.net:6379?auth=<url encoded primary or secondary key here>";

Als de sleutel geen URL-code ring heeft, ontvangt u mogelijk een uitzonde ring met een bericht zoals: Failed to parse session.save_path

Zie php session handlervoor meer informatie over het gebruik van Azure cache voor redis als een PHP-sessie cache met de PhpRedis-client.

Wat zijn redis-data bases?

Redis-data bases vormen alleen een logische schei ding van gegevens binnen hetzelfde redis-exemplaar. Het cache geheugen wordt gedeeld tussen alle data bases en het werkelijke geheugen gebruik van een bepaalde data base is afhankelijk van de sleutels/waarden die zijn opgeslagen in die data base. Een C6-cache heeft bijvoorbeeld 53 GB geheugen en een P5 heeft 120 GB. U kunt ervoor kiezen om alle 53 GB/120 GB in één Data Base te plaatsen of u kunt deze verdelen over meerdere data bases.

Notitie

Wanneer u een Premium Azure-cache gebruikt voor redis waarbij Clustering is ingeschakeld, is alleen data base 0 beschikbaar. Deze beperking is een intrinsieke redis-beperking en is niet specifiek voor Azure-cache voor redis. Zie voor meer informatie moet ik wijzigingen aanbrengen in mijn client toepassing voor het gebruik van clusteren?.

Volgende stappen

Meer informatie over de Veelgestelde vragen over andere Azure-caches voor redis.