Veelgestelde vragen over Azure Cache voor RedisAzure Cache for Redis FAQ

Meer informatie over de antwoorden op veelgestelde vragen, patronen en aanbevolen procedures voor Azure cache voor redis.Learn the answers to common questions, patterns, and best practices for Azure Cache for Redis.

Wat gebeurt er als mijn vraag hier niet wordt beantwoord?What if my question isn't answered here?

Als uw vraag hier niet wordt vermeld, laat het ons weten en wij helpen u een antwoord te vinden.If your question isn't listed here, let us know and we'll help you find an answer.

  • U kunt een vraag stellen in de opmerkingen aan het einde van deze veelgestelde vragen en samen werken met het Azure cache-team en andere leden van de community over dit artikel.You can post a question in the comments at the end of this FAQ and engage with the Azure Cache team and other community members about this article.
  • Als u een breder publiek wilt bereiken, kunt u een vraag stellen op het MSDN-forum van Azure cache en samen werken met het Azure cache-team en andere leden van de community.To reach a wider audience, you can post a question on the Azure Cache MSDN Forum and engage with the Azure Cache team and other members of the community.
  • Als u een functie aanvraag wilt maken, kunt u uw aanvragen en ideeën voor redis gebruikers Voice verzenden naar Azure cache.If you want to make a feature request, you can submit your requests and ideas to Azure Cache for Redis User Voice.
  • U kunt ook een e-mail verzenden naar ons via de externe feedback van Azure cache.You can also send an email to us at Azure Cache External Feedback.

Azure cache voor redis-basis beginselenAzure Cache for Redis basics

De veelgestelde vragen in deze sectie hebben betrekking op enkele van de basis beginselen van Azure cache voor redis.The FAQs in this section cover some of the basics of Azure Cache for Redis.

De volgende veelgestelde vragen hebben betrekking op basis concepten en vragen over Azure cache voor redis en worden beantwoord in een van de andere secties met veelgestelde vragen.The following FAQs cover basic concepts and questions about Azure Cache for Redis and are answered in one of the other FAQ sections.

Veelgestelde vragen over planningPlanning FAQs

Veelgestelde vragen over ontwikkel aarsDevelopment FAQs

Veelgestelde vragen over beveiligingSecurity FAQs

Veelgestelde vragen over productieProduction FAQs

Veelgestelde vragen over bewaking en probleem oplossingMonitoring and troubleshooting FAQs

In deze sectie vindt u veelgestelde vragen over veelvoorkomende controles en oplossingen voor probleem oplossing.The FAQs in this section cover common monitoring and troubleshooting questions. Zie voor meer informatie over het controleren en oplossen van problemen met uw Azure-cache voor redis-instanties Azure cache bewaken voor redis en de verschillende richt lijnen voor probleem oplossing.For more information about monitoring and troubleshooting your Azure Cache for Redis instances, see How to monitor Azure Cache for Redis and the various troubleshoot guides.

Veelgestelde vragen over eerdere cache aanbiedingenPrior Cache offering FAQs

Wat is Azure Cache voor Redis?What is Azure Cache for Redis?

Azure cache voor redis is gebaseerd op de populaire open-source software redis.Azure Cache for Redis is based on the popular open-source software Redis. Hiermee krijgt u toegang tot een beveiligde, toegewezen Azure-cache voor redis, die wordt beheerd door micro soft en toegankelijk vanuit elke toepassing in Azure.It gives you access to a secure, dedicated Azure Cache for Redis, managed by Microsoft, and accessible from any application within Azure. Zie de product pagina van Azure cache for redis op Azure.com voor een gedetailleerder overzicht.For a more detailed overview, see the Azure Cache for Redis product page on Azure.com.

Hoe kan ik aan de slag met Azure cache voor redis?How can I get started with Azure Cache for Redis?

Er zijn verschillende manieren om aan de slag te gaan met Azure cache voor redis.There are several ways you can get started with Azure Cache for Redis.

Als u nog geen Azure-account hebt, kunt u het volgende doen:If you don't already have an Azure account, you can:

Wat is Azure cache voor redis aanbieding en grootte moet ik gebruiken?What Azure Cache for Redis offering and size should I use?

Elke Azure-cache voor redis biedt verschillende opties voor grootte, band breedte, hoge Beschik baarheiden Sla .Each Azure Cache for Redis offering provides different levels of size, bandwidth, high availability, and SLA options.

Hier volgen enkele aandachtspunten voor het kiezen van een cache aanbieding.The following are considerations for choosing a Cache offering.

  • Geheugen: de lagen basis en standaard bieden 250 MB – 53 GB.Memory: The Basic and Standard tiers offer 250 MB – 53 GB. De Premium-laag biedt tot 1,2 TB (als een cluster) of 120 GB (niet-geclusterd).The Premium tier offers up to 1.2 TB (as a cluster) or 120 GB (non-clustered). Zie voor meer informatie Azure cache for redis prijzen.For more information, see Azure Cache for Redis Pricing.
  • Netwerk prestaties: als u een werk belasting hebt waarvoor hoge door Voer is vereist, biedt de Premium-laag meer band breedte dan Standard of Basic.Network Performance: If you have a workload that requires high throughput, the Premium tier offers more bandwidth compared to Standard or Basic. Daarnaast hebben grotere caches in elke laag meer band breedte vanwege de onderliggende virtuele machine die als host fungeert voor de cache.Also within each tier, larger size caches have more bandwidth because of the underlying VM that hosts the cache. Zie de volgende tabelvoor meer informatie.For more information, see the following table.
  • Door Voer: de Premium-laag biedt de Maxi maal beschik bare door voer.Throughput: The Premium tier offers the maximum available throughput. Als de cache server of client de bandbreedte limiet bereikt, ontvangt u mogelijk time-outs aan de client zijde.If the cache server or client reaches the bandwidth limits, you may receive timeouts on the client side. Zie de volgende tabel voor meer informatie.For more information, see the following table.
  • Hoge Beschik baarheid/Sla: Azure cache voor redis garandeert dat een Standard/Premium-cache ten minste 99,9% van de tijd beschikbaar is.High Availability/SLA: Azure Cache for Redis guarantees that a Standard/Premium cache is available at least 99.9% of the time. Zie voor meer informatie over onze SLA Azure cache for redis prijzen.To learn more about our SLA, see Azure Cache for Redis Pricing. De SLA heeft alleen betrekking op connectiviteit met de cache-eind punten.The SLA only covers connectivity to the Cache endpoints. De SLA heeft geen betrekking op beveiliging tegen verlies van gegevens.The SLA does not cover protection from data loss. We raden u aan de functie voor redis-gegevens persistentie in de Premium-laag te gebruiken om de tolerantie voor gegevens verlies te verg Roten.We recommend using the Redis data persistence feature in the Premium tier to increase resiliency against data loss.
  • Redis-gegevens persistentie: met de Premium-laag kunt u de cache gegevens in een Azure Storage-account behouden.Redis Data Persistence: The Premium tier allows you to persist the cache data in an Azure Storage account. In een Basic-of Standard-cache worden alle gegevens alleen in het geheugen opgeslagen.In a Basic/Standard cache, all the data is stored only in memory. Onderliggende problemen met de infra structuur kunnen leiden tot mogelijk gegevens verlies.Underlying infrastructure issues might result in potential data loss. We raden u aan de functie voor redis-gegevens persistentie in de Premium-laag te gebruiken om de tolerantie voor gegevens verlies te verg Roten.We recommend using the Redis data persistence feature in the Premium tier to increase resiliency against data loss. Azure-cache voor redis biedt de opties RDB en AOF (binnenkort beschikbaar) in redis-persistentie.Azure Cache for Redis offers RDB and AOF (coming soon) options in Redis persistence. Zie persistentie configureren voor een Premium Azure-cache voor redisvoor meer informatie.For more information, see How to configure persistence for a Premium Azure Cache for Redis.
  • Redis-cluster: als u caches wilt maken die groter zijn dan 120 GB of als u gegevens wilt Shard tussen meerdere redis-knoop punten, kunt u redis clustering gebruiken, die beschikbaar is in de laag Premium.Redis Cluster: To create caches larger than 120 GB, or to shard data across multiple Redis nodes, you can use Redis clustering, which is available in the Premium tier. Elk knoop punt bestaat uit een primair/replica-cache paar voor maximale Beschik baarheid.Each node consists of a primary/replica cache pair for high availability. Zie clustering configureren voor een Premium Azure-cache voor redisvoor meer informatie.For more information, see How to configure clustering for a Premium Azure Cache for Redis.
  • Verbeterde beveiliging en netwerk isolatie: Azure Virtual Network (VNET)-implementatie biedt verbeterde beveiliging en isolatie voor uw Azure-cache voor redis, evenals subnetten, beleid voor toegangs beheer en andere functies om de toegang verder te beperken.Enhanced security and network isolation: Azure Virtual Network (VNET) deployment provides enhanced security and isolation for your Azure Cache for Redis, as well as subnets, access control policies, and other features to further restrict access. Zie Virtual Network-ondersteuning configureren voor een Premium Azure-cache voor redisvoor meer informatie.For more information, see How to configure Virtual Network support for a Premium Azure Cache for Redis.
  • Redis configureren: in de standaard-en Premium-laag kunt u redis configureren voor de meldingen van de opdracht regel.Configure Redis: In both the Standard and Premium tiers, you can configure Redis for Keyspace notifications.
  • Maximum aantal client verbindingen: de Premium-laag biedt het maximum aantal clients dat verbinding kan maken met redis, met een groter aantal verbindingen voor grotere caches.Maximum number of client connections: The Premium tier offers the maximum number of clients that can connect to Redis, with a higher number of connections for larger sized caches. Bij clustering wordt het aantal beschik bare verbindingen voor een geclusterde cache niet verhoogd.Clustering does not increase the number of connections available for a clustered cache. Zie voor meer informatie Azure cache for redis prijzen.For more information, see Azure Cache for Redis pricing.
  • Toegewezen kern geheugen voor redis-server: in de Premium-laag zijn alle cache grootten een toegewezen kern voor redis.Dedicated Core for Redis Server: In the Premium tier, all cache sizes have a dedicated core for Redis. In de lagen basis en standaard hebben de C1-grootte en het bovenstaande een toegewezen kern voor redis-server.In the Basic/Standard tiers, the C1 size and above have a dedicated core for Redis server.
  • Redis is een enkele thread , waardoor meer dan twee kernen geen extra voor deel bieden ten opzichte van twee kernen, maar grotere VM-grootten hebben meestal meer band breedte dan kleinere grootten.Redis is single-threaded so having more than two cores does not provide additional benefit over having just two cores, but larger VM sizes typically have more bandwidth than smaller sizes. Als de cache server of-client de bandbreedte limiet bereikt, ontvangt u time-outs aan de client zijde.If the cache server or client reaches the bandwidth limits, then you receive timeouts on the client side.
  • Prestatie verbeteringen: caches in de Premium-laag worden geïmplementeerd op hardware met snellere processors, waardoor betere prestaties in vergelijking met de basis-of standaard-laag worden verbeterd.Performance improvements: Caches in the Premium tier are deployed on hardware that has faster processors, giving better performance compared to the Basic or Standard tier. Premium-laag caches hebben een hogere door Voer en een lagere latentie.Premium tier Caches have higher throughput and lower latencies.

Azure cache voor redis-prestatiesAzure Cache for Redis performance

De volgende tabel bevat de maximum waarden voor de band breedte die zijn waargenomen tijdens het testen van verschillende groottes van de standaard-en Premium-caches met redis-benchmark.exe van een IaaS-VM met de Azure-cache voor redis-eind punt.The following table shows the maximum bandwidth values observed while testing various sizes of Standard and Premium caches using redis-benchmark.exe from an IaaS VM against the Azure Cache for Redis endpoint. Voor SSL-door Voer wordt redis-Bench Mark gebruikt met stunnel om verbinding te maken met het Azure-cache geheugen voor redis-eind punten.For SSL throughput, redis-benchmark is used with stunnel to connect to the Azure Cache for Redis endpoint.

Notitie

Deze waarden zijn niet gegarandeerd en er is geen SLA voor deze getallen, maar het moet gebruikelijk zijn.These values are not guaranteed and there is no SLA for these numbers, but should be typical. U moet de test uw eigen toepassing laden om de juiste cache grootte voor uw toepassing te bepalen.You should load test your own application to determine the right cache size for your application. Deze nummers kunnen veranderen wanneer er periodiek nieuwere resultaten worden geplaatst.These numbers might change as we post newer results periodically.

In deze tabel kunnen we de volgende conclusies tekenen:From this table, we can draw the following conclusions:

  • De door Voer voor de caches die dezelfde grootte hebben, is hoger in de laag Premium, vergeleken met de laag standaard.Throughput for the caches that are the same size is higher in the Premium tier as compared to the Standard tier. Met een cache van 6 GB is de door Voer van P1 bijvoorbeeld 180.000 aanvragen per seconde (RPS) in vergelijking met 100.000 RPS voor C3.For example, with a 6 GB Cache, throughput of P1 is 180,000 requests per second (RPS) as compared to 100,000 RPS for C3.
  • Met redis clustering neemt de door Voer lineair toe als u het aantal Shards (knoop punten) in het cluster verhoogt.With Redis clustering, throughput increases linearly as you increase the number of shards (nodes) in the cluster. Als u bijvoorbeeld een P4-cluster van 10 Shards maakt, is de beschik bare door Voer 400.000 * 10 = 4.000.000 RPS.For example, if you create a P4 cluster of 10 shards, then the available throughput is 400,000 * 10 = 4 million RPS.
  • De door Voer voor grotere sleutel grootten is hoger in de Premium-laag, vergeleken met de Standard-laag.Throughput for bigger key sizes is higher in the Premium tier as compared to the Standard Tier.
PrijscategoriePricing tier GrootteSize Cpu-coresCPU cores Beschik bare band breedteAvailable bandwidth 1-grootte van KB-waarde1-KB value size 1-grootte van KB-waarde1-KB value size
Standaard cache groottenStandard cache sizes Megabits per seconde (MB/s)/mega bytes per seconde (MB/s)Megabits per sec (Mb/s) / Megabytes per sec (MB/s) Aantal aanvragen per seconde (RPS) niet-SSLRequests per second (RPS) Non-SSL SSL-aanvragen per seconde (RPS)Requests per second (RPS) SSL
C0C0 250 MB250 MB GedeeldShared 100 / 12.5100 / 12.5 15.00015,000 7.5007,500
C1C1 1 GB1 GB 11 500 / 62.5500 / 62.5 38.00038,000 20.72020,720
C2C2 2,5 GB2.5 GB 22 500 / 62.5500 / 62.5 41.00041,000 37.00037,000
C3C3 6 GB6 GB 44 1000/1251000 / 125 100.000100,000 90,00090,000
C4C4 13 GB13 GB 22 500 / 62.5500 / 62.5 60,00060,000 55.00055,000
C5C5 26 GB26 GB 44 1,000 / 1251,000 / 125 102.000102,000 93.00093,000
C6C6 53 GB53 GB 88 2,000 / 2502,000 / 250 126.000126,000 120,000120,000
Premium-cache groottenPremium cache sizes CPU-kernen per ShardCPU cores per shard Megabits per seconde (MB/s)/mega bytes per seconde (MB/s)Megabits per sec (Mb/s) / Megabytes per sec (MB/s) Aanvragen per seconde (RPS) niet-SSL, per ShardRequests per second (RPS) Non-SSL, per shard SSL-aanvragen per seconde (RPS) per ShardRequests per second (RPS) SSL, per shard
P1P1 6 GB6 GB 22 1,500 / 187.51,500 / 187.5 180,000180,000 172.000172,000
P2P2 13 GB13 GB 44 3,000 / 3753,000 / 375 350.000350,000 341.000341,000
P3P3 26 GB26 GB 44 3,000 / 3753,000 / 375 350.000350,000 341.000341,000
P4P4 53 GB53 GB 88 6,000 / 7506,000 / 750 400,000400,000 373.000373,000
P5P5 120 GB120 GB 2020 6,000 / 7506,000 / 750 400,000400,000 373.000373,000

Voor instructies voor het instellen van stunnel of het downloaden van de redis-hulpprogram ma's, zoals redis-benchmark.exe, raadpleegt u de sectie Hoe kan ik redis-opdrachten uitvoeren?For instructions on setting up stunnel or downloading the Redis tools such as redis-benchmark.exe, see the How can I run Redis commands? section.

In welke regio moet ik mijn cache vinden?In what region should I locate my cache?

Voor de beste prestaties en de laagste latentie zoekt u uw Azure-cache voor redis in dezelfde regio als uw cache-client toepassing.For best performance and lowest latency, locate your Azure Cache for Redis in the same region as your cache client application.

Hoe word ik gefactureerd voor Azure-cache voor redis?How am I billed for Azure Cache for Redis?

Azure cache voor redis-prijzen is hier.Azure Cache for Redis pricing is here. Op de pagina met prijzen worden prijzen weer gegeven als uurtarief.The pricing page lists pricing as an hourly rate. Caches worden per minuut in rekening gebracht vanaf het moment dat de cache wordt gemaakt tot het moment dat een cache wordt verwijderd.Caches are billed on a per-minute basis from the time that the cache is created until the time that a cache is deleted. Er is geen optie voor het stoppen of onderbreken van de facturering van een cache.There is no option for stopping or pausing the billing of a cache.

Kan ik Azure cache gebruiken voor redis met Azure Government Cloud, Azure China Cloud of Microsoft Azure Duitsland?Can I use Azure Cache for Redis with Azure Government Cloud, Azure China Cloud, or Microsoft Azure Germany?

Ja, Azure cache voor redis is beschikbaar in Azure Government Cloud, Azure China 21Vianet-Cloud en Microsoft Azure Duitsland.Yes, Azure Cache for Redis is available in Azure Government Cloud, Azure China 21Vianet Cloud, and Microsoft Azure Germany. De Url's voor toegang tot en beheer van Azure cache voor redis verschillen in de clouds in vergelijking met de open bare Azure-Cloud.The URLs for accessing and managing Azure Cache for Redis are different in these clouds compared with Azure Public Cloud.

CloudCloud DNS-achtervoegsel voor redisDns Suffix for Redis
PublicPublic *.redis.cache.windows.net*.redis.cache.windows.net
US GovUS Gov *.redis.cache.usgovcloudapi.net*.redis.cache.usgovcloudapi.net
DuitslandGermany *.redis.cache.cloudapi.de*.redis.cache.cloudapi.de
ChinaChina *.redis.cache.chinacloudapi.cn*.redis.cache.chinacloudapi.cn

Zie de volgende koppelingen voor meer informatie over overwegingen bij het gebruik van Azure cache voor redis met andere Clouds.For more information on considerations when using Azure Cache for Redis with other clouds, see the following links.

Zie verbinding maken met andere Clouds-Azure cache voor redis Power shellvoor meer informatie over het gebruik van Azure cache voor redis met Power shell in azure Government Cloud, Azure China 21Vianet-cloud en Microsoft Azure Duitsland.For information on using Azure Cache for Redis with PowerShell in Azure Government Cloud, Azure China 21Vianet Cloud, and Microsoft Azure Germany, see How to connect to other clouds - Azure Cache for Redis PowerShell.

Wat doen de configuratie opties voor stack Exchange. redis?What do the StackExchange.Redis configuration options do?

Stack Exchange. redis heeft veel opties.StackExchange.Redis has many options. In deze sectie vindt u enkele van de algemene instellingen.This section talks about some of the common settings. Zie stack Exchange. redis-configuratievoor meer gedetailleerde informatie over de opties voor stack Exchange. redis.For more detailed information about StackExchange.Redis options, see StackExchange.Redis configuration.

ConfigurationOptionsConfigurationOptions BeschrijvingDescription AanbevelingRecommendation
AbortOnConnectFailAbortOnConnectFail Als deze eigenschap is ingesteld op True, wordt er geen verbinding gemaakt na een netwerk fout.When set to true, the connection will not reconnect after a network failure. Stel deze waarde in op False en laat stack Exchange. redis automatisch opnieuw verbinding maken.Set to false and let StackExchange.Redis reconnect automatically.
ConnectRetryConnectRetry Het aantal keren dat verbindings pogingen moeten worden herhaald tijdens de eerste verbinding.The number of times to repeat connection attempts during initial connect. Raadpleeg de volgende opmerkingen voor hulp.See the following notes for guidance.
ConnectTimeoutConnectTimeout Time-out in MS voor verbindings bewerkingen.Timeout in ms for connect operations. Raadpleeg de volgende opmerkingen voor hulp.See the following notes for guidance.

Meestal zijn de standaard waarden van de client voldoende.Usually the default values of the client are sufficient. U kunt de opties aanpassen op basis van uw werk belasting.You can fine-tune the options based on your workload.

  • Nieuwe pogingenRetries

    • De algemene richt lijnen voor ConnectRetry en ConnectTimeout zijn snel en opnieuw proberen.For ConnectRetry and ConnectTimeout, the general guidance is to fail fast and retry again. 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.This guidance is based on your workload and how much time on average it takes for your client to issue a Redis command and receive a response.
    • Laat stack Exchange. redis automatisch opnieuw verbinding maken in plaats van de verbindings status te controleren en zelf verbinding te maken.Let StackExchange.Redis automatically reconnect instead of checking connection status and reconnecting yourself. Vermijd het gebruik van de eigenschap ConnectionMultiplexer. IsConnected.Avoid using the ConnectionMultiplexer.IsConnected property.
    • Snowballing: soms is het mogelijk dat u een probleem ondervindt waarbij u het opnieuw probeert en de nieuwe pogingen Snowball en nooit herstellen.Snowballing - sometimes you may run into an issue where you are retrying and the retries snowball and never recovers. 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.If snowballing occurs, you should consider using an exponential backoff retry algorithm as described in Retry general guidance published by the Microsoft Patterns & Practices group.
  • Time-outwaardenTimeout values

    • Denk aan uw werk belasting en stel de waarden dienovereenkomstig in.Consider your workload and set the values accordingly. Als u grote waarden opslaat, stelt u de time-out in op een hogere waarde.If you are storing large values, set the timeout to a higher value.
    • Stel AbortOnConnectFail in op False en laat stack Exchange. redis opnieuw verbinding maken.Set AbortOnConnectFail to false and let StackExchange.Redis reconnect for you.
    • Gebruik één ConnectionMultiplexer-exemplaar voor de toepassing.Use a single ConnectionMultiplexer instance for the application. 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.You can use a LazyConnection to create a single instance that is returned by a Connection property, as shown in Connect to the cache using the ConnectionMultiplexer class.
    • Stel de eigenschap ConnectionMultiplexer.ClientName in op de unieke naam van een app-exemplaar voor diagnostische doel einden.Set the ConnectionMultiplexer.ClientName property to an app instance unique name for diagnostic purposes.
    • Gebruik meerdere ConnectionMultiplexer instanties voor aangepaste werk belastingen.Use multiple ConnectionMultiplexer instances for custom workloads.
      • U kunt dit model volgen als uw toepassing variërend wordt geladen.You can follow this model if you have varying load in your application. Bijvoorbeeld:For example:
      • U kunt één multiplexer voor het omgaan met grote sleutels.You can have one multiplexer for dealing with large keys.
      • U kunt één multiplexer voor het omgaan met kleine sleutels hebben.You can have one multiplexer for dealing with small keys.
      • U kunt verschillende waarden instellen voor verbindingstime-outs en pogings logica voor elke ConnectionMultiplexer die u gebruikt.You can set different values for connection timeouts and retry logic for each ConnectionMultiplexer that you use.
      • Stel de eigenschap ClientName van elke multiplexer in om te helpen met diagnostische gegevens.Set the ClientName property on each multiplexer to help with diagnostics.
      • Deze richt lijnen kunnen leiden tot meer gestroomlijnde latentie per ConnectionMultiplexer.This guidance may lead to more streamlined latency per ConnectionMultiplexer.

Welke Azure-cache voor redis-clients kan ik gebruiken?What Azure Cache for Redis clients can I use?

Een van de fantastische dingen over redis is dat er veel clients zijn die veel verschillende ontwikkelings talen ondersteunen.One of the great things about Redis is that there are many clients supporting many different development languages. Zie redis-clientsvoor een actuele lijst met clients.For a current list of clients, see Redis clients. Zie Azure cache gebruiken voor redis en de artikelen in de inhouds opgave voor meer zelf studies over verschillende talen en clients.For tutorials that cover several different languages and clients, see How to use Azure Cache for Redis and it's sibling articles in the table of contents.

Hostnaam, poorten en toegangs sleutels ophalen uit de Azure PortalRetrieve host name, ports, and access keys from the Azure portal

Als u verbinding wilt maken met een Azure-cache voor redis-exemplaar, moeten de cache-clients beschikken over de hostnaam, poorten en een sleutel voor de cache.To connect to an Azure Cache for Redis instance, cache clients need the host name, ports, and a key for the cache. Sommige clients kunnen enigszins andere namen gebruiken om naar deze items te verwijzen.Some clients might refer to these items by slightly different names. U kunt de hostnaam, poorten en sleutels van de Azure Portalophalen.You can get the host name, ports, and keys from the Azure portal.

  • Als u de toegangs sleutels wilt ophalen, selecteert u in de cache naar links de optie toegangs sleutels.To get the access keys, from your cache left navigation, select Access keys.

    Sleutels van Azure Cache voor Redis

  • Als u de hostnaam en poorten wilt ophalen, selecteert u in de cache naar links de optie Eigenschappen.To get the host name and ports, from your cache left navigation, select Properties. De hostnaam is van het formulier <DNS-naam >. redis. cache. Windows. net.The host name is of the form <DNS name>.redis.cache.windows.net.

    Eigenschappen van Azure Cache voor Redis

Is er een lokale emulator voor Azure cache voor redis?Is there a local emulator for Azure Cache for 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 van redis op uw lokale machine 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:There is no local emulator for Azure Cache for Redis, but you can run the MSOpenTech version of redis-server.exe from the Redis command-line tools on your local machine and connect to it to get a similar experience to a local cache emulator, as shown in the following example:

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.You can optionally configure a redis.conf file to more closely match the default cache settings for your online Azure Cache for Redis if desired.

Hoe kan ik redis-opdrachten uitvoeren?How can I run Redis commands?

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.You can use any of the commands listed at Redis commands except for the commands listed at Redis commands not supported in Azure Cache for Redis. U hebt verschillende opties om redis-opdrachten uit te voeren.You have several options to run Redis commands.

  • Als u een Standard-of Premium-cache hebt, kunt u redis-opdrachten uitvoeren met behulp van de redis-console.If you have a Standard or Premium cache, you can run Redis commands using the Redis Console. De redis-console biedt een veilige manier om redis-opdrachten uit te voeren in de Azure Portal.The Redis console provides a secure way to run Redis commands in the Azure portal.
  • U kunt ook de redis-opdracht regel Programma's gebruiken.You can also use the Redis command-line tools. Als u deze wilt gebruiken, voert u de volgende stappen uit:To use them, perform the following steps:
  • Down load de redis-opdracht regel Programma's.Download the Redis command-line tools.
  • Maak verbinding met de cache met behulp van redis-cli.exe.Connect to the cache using 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:Pass in the cache endpoint using the -h switch and the key using -a as shown in the following example:
  • 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 SSL-poort, maar u kunt een hulp programma zoals stunnel gebruiken om veilig verbinding te maken met de hulpprogram ma's met de SSL-poort door de instructies te volgen in het opdracht regel programma redis gebruiken met Azure cache for redis .The Redis command-line tools do not work with the SSL port, but you can use a utility such as stunnel to securely connect the tools to the SSL port by following the directions in the How to use the Redis command-line tool with Azure Cache for Redis article.

Waarom heeft Azure cache voor redis geen verwijzing naar een MSDN Class-bibliotheek, zoals een aantal andere Azure-Services?Why doesn't Azure Cache for Redis have an MSDN class library reference like some of the other Azure services?

Microsoft Azure Cache voor Redis is gebaseerd op de populaire open source Azure Cache voor Redis.Microsoft Azure Cache for Redis is based on the popular open-source Azure Cache for Redis. Het kan worden gebruikt door een groot aantal redis-clients voor veel programmeer talen.It can be accessed by a wide variety of Redis clients for many programming languages. Elke client heeft zijn eigen API die aanroepen naar de Azure-cache voor redis-exemplaar met behulp van redis-opdrachten.Each client has its own API that makes calls to the Azure Cache for Redis instance using Redis commands.

Omdat elke client verschilt, is er niet één gecentraliseerde klassen verwijzing op MSDN en houdt elke client zijn eigen referentie documentatie bij.Because each client is different, there is not one centralized class reference on MSDN, and each client maintains its own reference documentation. 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.In addition to the reference documentation, there are several tutorials showing how to get started with Azure Cache for Redis using different languages and 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.To access these tutorials, see How to use Azure Cache for Redis and it's sibling articles in the table of contents.

Kan ik Azure cache gebruiken voor redis als een PHP-sessie cache?Can I use Azure Cache for Redis as a PHP session cache?

Ja, als u Azure cache voor redis wilt gebruiken als een PHP-sessie cache, geeft u de connection string op in uw Azure-cache voor redis-exemplaar in session.save_path.Yes, to use Azure Cache for Redis as a PHP session cache, specify the connection string to your Azure Cache for Redis instance 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:When using Azure Cache for Redis as a PHP session cache, you must URL encode the security key used to connect to the cache, as shown in the following example:

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 als: Failed to parse session.save_pathIf the key is not URL encoded, you may receive an exception with a message like: 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.For more information about using Azure Cache for Redis as a PHP session cache with the PhpRedis client, see PHP Session handler.

Wat zijn redis-data bases?What are Redis databases?

Redis-data bases vormen alleen een logische schei ding van gegevens binnen hetzelfde redis-exemplaar.Redis Databases are just a logical separation of data within the same Redis instance. 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.The cache memory is shared between all the databases and actual memory consumption of a given database depends on the keys/values stored in that database. Een C6-cache heeft bijvoorbeeld 53 GB geheugen en een P5 heeft 120 GB.For example, a C6 cache has 53 GB of memory, and a P5 has 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.You can choose to put all 53 GB / 120 GB into one database or you can split it up between multiple databases.

Notitie

Wanneer u een Premium Azure-cache gebruikt voor redis waarbij Clustering is ingeschakeld, is alleen data base 0 beschikbaar.When using a Premium Azure Cache for Redis with clustering enabled, only database 0 is available. Deze beperking is een intrinsieke redis-beperking en is niet specifiek voor Azure-cache voor redis.This limitation is an intrinsic Redis limitation and is not specific to Azure Cache for Redis. Zie voor meer informatie moet ik wijzigingen aanbrengen in mijn client toepassing voor het gebruik van clusters?For more information, see Do I need to make any changes to my client application to use clustering?

Wanneer moet ik de niet-SSL-poort inschakelen om verbinding te maken met redis?When should I enable the non-SSL port for connecting to Redis?

Redis server biedt geen systeem eigen ondersteuning voor SSL, maar Azure cache voor redis wel.Redis server does not natively support SSL, but Azure Cache for Redis does. Als u verbinding maakt met Azure cache voor redis en uw client SSL ondersteunt, zoals stack Exchange. redis, moet u SSL gebruiken.If you are connecting to Azure Cache for Redis and your client supports SSL, like StackExchange.Redis, then you should use SSL.

Notitie

De niet-SSL-poort is standaard uitgeschakeld voor nieuwe Azure-cache voor redis-exemplaren.The non-SSL port is disabled by default for new Azure Cache for Redis instances. Als uw client geen ondersteuning biedt voor SSL, moet u de niet-SSL-poort inschakelen door de instructies in de sectie toegangs poorten van het artikel een cache in azure-cache configureren voor redis te volgen.If your client does not support SSL, then you must enable the non-SSL port by following the directions in the Access ports section of the Configure a cache in Azure Cache for Redis article.

Redis-hulpprogram ma's zoals redis-cli werken niet met de SSL-poort, maar u kunt een hulp programma zoals stunnel gebruiken om een veilige verbinding te maken tussen de hulpprogram ma's en de SSL-poort door de aanwijzingen in de aankondiging van de ASP.net-sessie status provider voor redis preview release te volgen.Redis tools such as redis-cli do not work with the SSL port, but you can use a utility such as stunnel to securely connect the tools to the SSL port by following the directions in the Announcing ASP.NET Session State Provider for Redis Preview Release blog post.

Voor instructies over het downloaden van de redis-hulpprogram ma's, zie de sectie Hoe kan ik redis-opdrachten uitvoeren?For instructions on downloading the Redis tools, see the How can I run Redis commands? section.

Wat zijn de aanbevolen procedures voor productie?What are some production best practices?

Best practices voor stack Exchange. redisStackExchange.Redis best practices

  • Stel AbortConnect in op False en laat de ConnectionMultiplexer automatisch opnieuw verbinding maken.Set AbortConnect to false, then let the ConnectionMultiplexer reconnect automatically. Zie hier voor meer informatie.See here for details.
  • De ConnectionMultiplexer opnieuw gebruiken: Maak geen nieuwe voor elke aanvraag.Reuse the ConnectionMultiplexer - do not create a new one for each request. Het Lazy<ConnectionMultiplexer> patroon dat hier wordt weer gegeven , wordt aanbevolen.The Lazy<ConnectionMultiplexer> pattern shown here is recommended.
  • Redis werkt het beste met kleinere waarden. u kunt dus grotere gegevens in meerdere sleutels afzetten.Redis works best with smaller values, so consider chopping up bigger data into multiple keys. In deze redis-discussiewordt 100 kB als groot beschouwd.In this Redis discussion, 100 kb is considered large. Lees dit artikel voor een voor beeld van een probleem dat kan worden veroorzaakt door grote waarden.Read this article for an example problem that can be caused by large values.
  • Configureer de instellingen van uw thread pool om time-outs te voor komen.Configure your ThreadPool settings to avoid timeouts.
  • Gebruik ten minste de standaard connectTimeout van 5 seconden.Use at least the default connectTimeout of 5 seconds. Dit interval geeft stack Exchange. redis voldoende tijd om de verbinding te herstellen in het geval van een netwerk Blip.This interval gives StackExchange.Redis sufficient time to re-establish the connection in the event of a network blip.
  • Houd rekening met de prestatie kosten die zijn gekoppeld aan de verschillende bewerkingen die u uitvoert.Be aware of the performance costs associated with different operations you are running. Zo is de KEYS opdracht een O (n)-bewerking en moet worden vermeden.For instance, the KEYS command is an O(n) operation and should be avoided. De redis.io-site bevat details over de tijd complexiteit voor elke bewerking die wordt ondersteund.The redis.io site has details around the time complexity for each operation that it supports. Klik op elke opdracht om de complexiteit van elke bewerking weer te geven.Click each command to see the complexity for each operation.

Configuratie en conceptenConfiguration and concepts

  • Gebruik de standaard-of Premium-laag voor productie systemen.Use Standard or Premium Tier for Production systems. De laag Basic is een systeem met één knooppunt zonder gegevensreplicatie en zonder SLA.The Basic Tier is a single node system with no data replication and no SLA. Gebruik minimaal een C1-cache.Also, use at least a C1 cache. C0-caches worden doorgaans gebruikt voor eenvoudige ontwikkel-en test scenario's.C0 caches are typically used for simple dev/test scenarios.
  • Houd er rekening mee dat redis een in-Memory- gegevens archief is.Remember that Redis is an In-Memory data store. Lees dit artikel zodat u op de hoogte bent van scenario's waarin gegevens verlies zich kan voordoen.Read this article so that you are aware of scenarios where data loss can occur.
  • Ontwikkel uw systeem zodat het verbinding problemen kan verwerken vanwege patches en failover.Develop your system such that it can handle connection blips due to patching and failover.

Prestaties testenPerformance testing

  • Begin met redis-benchmark.exe om een mogelijke door voer te krijgen voordat u uw eigen prestatie tests schrijft.Start by using redis-benchmark.exe to get a feel for possible throughput before writing your own perf tests. Omdat redis-benchmark geen ondersteuning biedt voor SSL, moet u de niet-SSL-poort via de Azure Portal inschakelen voordat u de test uitvoert.Because redis-benchmark does not support SSL, you must enable the Non-SSL port through the Azure portal before you run the test. Zie Hoe kan ik Bench Mark en de prestaties van mijn cache testen voor voor beelden.For examples, see How can I benchmark and test the performance of my cache?
  • De client-VM die wordt gebruikt voor het testen moet zich in dezelfde regio bevinden als uw Azure-cache voor redis-exemplaar.The client VM used for testing should be in the same region as your Azure Cache for Redis instance.
  • We raden u aan om een dv2-VM-reeks te gebruiken voor uw client, omdat deze betere hardware heeft en de beste resultaten moeten bieden.We recommend using Dv2 VM Series for your client as they have better hardware and should give the best results.
  • Zorg ervoor dat uw client-VM die u kiest, ten minste zoveel computer-en bandbreedte capaciteit heeft als de cache die u wilt testen.Make sure your client VM you choose has at least as much computing and bandwidth capability as the cache you are testing.
  • Schakel VRSS in op de client computer als u zich in Windows bevindt.Enable VRSS on the client machine if you are on Windows. Zie hier voor meer informatie.See here for details.
  • Redis-exemplaren van de Premium-laag hebben een betere netwerk latentie en door Voer omdat ze worden uitgevoerd op betere hardware voor zowel CPU als netwerk.Premium tier Redis instances have better network latency and throughput because they are running on better hardware for both CPU and Network.

Wat zijn enkele aandachtspunten bij het gebruik van algemene redis-opdrachten?What are some of the considerations when using common Redis commands?

  • Vermijd het gebruik van bepaalde redis-opdrachten die veel tijd in beslag nemen, tenzij u de impact van deze opdrachten volledig begrijpt.Avoid using certain Redis commands that take a long time to complete, unless you fully understand the impact of these commands. Voer bijvoorbeeld niet de opdracht sleutels in productie uit.For example, do not run the KEYS command in production. Afhankelijk van het aantal sleutels kan het lang duren om te retour neren.Depending on the number of keys, it could take a long time to return. Redis is een server met één thread en verwerkt opdrachten een voor een.Redis is a single-threaded server and it processes commands one at a time. Als u andere opdrachten hebt uitgegeven na sleutels, worden ze niet verwerkt totdat redis de opdracht sleutels verwerkt.If you have other commands issued after KEYS, they will not be processed until Redis processes the KEYS command. De redis.io-site bevat details over de tijd complexiteit voor elke bewerking die wordt ondersteund.The redis.io site has details around the time complexity for each operation that it supports. Klik op elke opdracht om de complexiteit van elke bewerking weer te geven.Click each command to see the complexity for each operation.
  • Sleutel grootten: moet ik kleine sleutel/waarden of grote sleutel/waarden gebruiken?Key sizes - should I use small key/values or large key/values? Dit is afhankelijk van het scenario.It depends on the scenario. Als voor uw scenario grotere sleutels zijn vereist, kunt u de ConnectionTimeout aanpassen, vervolgens waarden opnieuw proberen en de logica voor opnieuw proberen aan te passen.If your scenario requires larger keys, you can adjust the ConnectionTimeout, then retry values and adjust your retry logic. In een redis-server perspectief bieden kleinere waarden betere prestaties.From a Redis server perspective, smaller values give better performance.
  • Dit betekent niet dat u geen grotere waarden in redis kunt opslaan. u moet rekening houden met de volgende overwegingen.These considerations don't mean that you can't store larger values in Redis; you must be aware of the following considerations. De latentie is hoger.Latencies will be higher. Als u een set gegevens hebt die groter is en een kleiner aantal, kunt u meerdere ConnectionMultiplexer-instanties gebruiken, die allemaal zijn geconfigureerd met een andere set time-out-en nieuwe waarden, zoals wordt beschreven in de vorige sectie de configuratie opties voor de stack Exchange. redis .If you have one set of data that is larger and one that is smaller, you can use multiple ConnectionMultiplexer instances, each configured with a different set of timeout and retry values, as described in the previous What do the StackExchange.Redis configuration options do section.

Hoe kan ik Bench Mark en test de prestaties van mijn cache?How can I benchmark and test the performance of my cache?

  • Schakel de diagnostische gegevens van de cache in, zodat u de status van de cache kunt bewaken.Enable cache diagnostics so you can monitor the health of your cache. U kunt de metrische gegevens weergeven in Azure Portal. U kunt ze ook downloaden en bekijken met een hulpprogramma van uw keuze.You can view the metrics in the Azure portal and you can also download and review them using the tools of your choice.
  • U kunt redis-benchmark. exe gebruiken om de redis-server te laden.You can use redis-benchmark.exe to load test your Redis server.
  • Zorg ervoor dat de belasting test-client en de Azure-cache voor redis zich in dezelfde regio bevinden.Ensure that the load testing client and the Azure Cache for Redis are in the same region.
  • Gebruik redis-cli. exe en controleer de cache met behulp van de opdracht INFO.Use redis-cli.exe and monitor the cache using the INFO command.
  • Als uw belasting een hoge geheugen fragmentatie veroorzaakt, moet u omhoog schalen naar een grotere cache grootte.If your load is causing high memory fragmentation, you should scale up to a larger cache size.
  • Voor instructies over het downloaden van de redis-hulpprogram ma's, zie de sectie Hoe kan ik redis-opdrachten uitvoeren?For instructions on downloading the Redis tools, see the How can I run Redis commands? section.

De volgende opdrachten bieden een voor beeld van het gebruik van redis-benchmark. exe.The following commands provide an example of using redis-benchmark.exe. Voor nauw keurige resultaten voert u deze opdrachten uit vanaf een virtuele machine in dezelfde regio als uw cache.For accurate results, run these commands from a VM in the same region as your cache.

  • SET-aanvragen met pipeline testen met behulp van een nettolading van 1 KBTest Pipelined SET requests using a 1k payload

    redis-benchmark.exe -h **yourcache**.redis.cache.windows.net -a **yourAccesskey** -t SET -n 1000000 -d 1024 -P 50

  • Test aanvragen voor het ophalen van pijp lijnen met een payload van 1 KB.Test Pipelined GET requests using a 1k payload. Opmerking: Voer de SET-test hierboven eerst uit om de cache in te vullenNOTE: Run the SET test shown above first to populate cache

    redis-benchmark.exe -h **yourcache**.redis.cache.windows.net -a **yourAccesskey** -t GET -n 1000000 -d 1024 -P 50

Belang rijke informatie over de groei van de thread poolImportant details about ThreadPool growth

De CLR-thread pool heeft twee soorten threads: "worker" en "I/O-voltooiings poort" (IOCP).The CLR ThreadPool has two types of threads - "Worker" and "I/O Completion Port" (IOCP) threads.

  • Werk threads worden gebruikt voor zaken als het verwerken van de Task.Run(…)-of ThreadPool.QueueUserWorkItem(…)-methoden.Worker threads are used for things like processing the Task.Run(…), or ThreadPool.QueueUserWorkItem(…) methods. Deze threads worden ook gebruikt door verschillende onderdelen in de CLR wanneer het werk moet plaatsvinden op een achtergrond thread.These threads are also used by various components in the CLR when work needs to happen on a background thread.
  • IOCP-threads worden gebruikt wanneer asynchrone IO plaatsvindt, bijvoorbeeld bij het lezen van het netwerk.IOCP threads are used when asynchronous IO happens, such as when reading from the network.

De thread pool biedt nieuwe werkthreads of I/O-voltooiings threads op aanvraag (zonder enige beperking) totdat de instelling ' minimum ' voor elk type thread wordt bereikt.The thread pool provides new worker threads or I/O completion threads on demand (without any throttling) until it reaches the "Minimum" setting for each type of thread. Standaard is het minimum aantal threads ingesteld op het aantal processors op een systeem.By default, the minimum number of threads is set to the number of processors on a system.

Zodra het aantal bestaande (bezette) threads het ' minimale ' aantal threads aankomt, wordt door de thread pool de snelheid beperkt waarmee nieuwe threads worden geinjecteerd op één thread per 500 milliseconden.Once the number of existing (busy) threads hits the "minimum" number of threads, the ThreadPool will throttle the rate at which it injects new threads to one thread per 500 milliseconds. Als uw systeem bijvoorbeeld een burst van een IOCP-thread krijgt, wordt dat proces snel uitgevoerd.Typically, if your system gets a burst of work needing an IOCP thread, it will process that work quickly. Als de burst van work echter meer is dan de geconfigureerde minimum instelling, zal er enige vertraging optreden bij het verwerken van een deel van het werk wanneer de thread pool wacht om een van twee dingen te doen.However, if the burst of work is more than the configured "Minimum" setting, there will be some delay in processing some of the work as the ThreadPool waits for one of two things to happen.

  1. Een bestaande thread wordt gratis om het werk te verwerken.An existing thread becomes free to process the work.
  2. Er wordt geen bestaande thread gratis voor 500 MS, dus er wordt een nieuwe thread gemaakt.No existing thread becomes free for 500 ms, so a new thread is created.

In principe betekent dit dat wanneer het aantal bezette threads groter is dan de minimale threads, u waarschijnlijk een vertraging van 500 MS betaalt voordat het netwerk verkeer door de toepassing wordt verwerkt.Basically, it means that when the number of Busy threads is greater than Min threads, you are likely paying a 500-ms delay before network traffic is processed by the application. Het is ook belang rijk te weten dat wanneer een bestaande thread langer dan 15 seconden inactief blijft (op basis van wat ik weet), deze wordt opgeschoond en deze groei en krimping kan worden herhaald.Also, it is important to note that when an existing thread stays idle for longer than 15 seconds (based on what I remember), it will be cleaned up and this cycle of growth and shrinkage can repeat.

Als we een voor beeld van een fout bericht van stack Exchange. redis (build 1.0.450 of hoger) bekijken, ziet u dat er nu thread pool-statistieken worden afgedrukt (Zie de details van IOCP en WORKer hieronder).If we look at an example error message from StackExchange.Redis (build 1.0.450 or later), you will see that it now prints ThreadPool statistics (see IOCP and WORKER details below).

System.TimeoutException: Timeout performing GET MyKey, inst: 2, mgr: Inactive,
queue: 6, qu: 0, qs: 6, qc: 0, wr: 0, wq: 0, in: 0, ar: 0,
IOCP: (Busy=6,Free=994,Min=4,Max=1000),
WORKER: (Busy=3,Free=997,Min=4,Max=1000)

In het vorige voor beeld ziet u dat er voor IOCP-thread zes bezette threads zijn en het systeem zo is geconfigureerd dat vier minimale threads zijn toegestaan.In the previous example, you can see that for IOCP thread there are six busy threads and the system is configured to allow four minimum threads. In dit geval zou de client waarschijnlijk 2 500-MS vertragingen hebben gezien, omdat 6 > 4.In this case, the client would have likely seen two 500-ms delays, because 6 > 4.

Houd er rekening mee dat stack Exchange. redis time-outs kan opraken als de groei van IOCP-of WORKer-threads wordt beperkt.Note that StackExchange.Redis can hit timeouts if growth of either IOCP or WORKER threads gets throttled.

AanbevelingRecommendation

Op basis van deze informatie raden we u ten zeerste aan dat klanten de minimale configuratie waarde voor IOCP-en WORKer-threads instellen op iets groter dan de standaard waarde.Given this information, we strongly recommend that customers set the minimum configuration value for IOCP and WORKER threads to something larger than the default value. We bieden geen ondersteuning voor het formaat van één grootte, zoals de juiste waarde voor de ene toepassing waarschijnlijk te hoog of laag is voor een andere toepassing.We can't give one-size-fits-all guidance on what this value should be because the right value for one application will likely be too high or low for another application. Deze instelling kan ook van invloed zijn op de prestaties van andere onderdelen van gecompliceerde toepassingen, zodat elke klant deze instelling moet aanpassen aan hun specifieke behoeften.This setting can also impact the performance of other parts of complicated applications, so each customer needs to fine-tune this setting to their specific needs. Een goede start locatie is 200 of 300 en vervolgens naar behoefte testen en verfijnen.A good starting place is 200 or 300, then test and tweak as needed.

Deze instelling configureren:How to configure this setting:

private readonly int minThreads = 200;
void Application_Start(object sender, EventArgs e)
{
    // Code that runs on application startup
    AreaRegistration.RegisterAllAreas();
    RouteConfig.RegisterRoutes(RouteTable.Routes);
    BundleConfig.RegisterBundles(BundleTable.Bundles);
    ThreadPool.SetMinThreads(minThreads, minThreads);
}

Notitie

De waarde die wordt opgegeven met deze methode is een algemene instelling die van invloed is op het hele AppDomain.The value specified by this method is a global setting, affecting the whole AppDomain. Als u bijvoorbeeld een computer met vier kernen hebt en minWorkerThreads en minIoThreads wilt instellen op 50 per CPU tijdens runtime, gebruikt u thread pool. SetMinThreads (200, 200) .For example, if you have a 4-core machine and want to set minWorkerThreads and minIoThreads to 50 per CPU during run-time, you would use ThreadPool.SetMinThreads(200, 200).

  • Het is ook mogelijk om de instelling van het minimale aantal threads op te geven met behulp van de configuratie-instelling MinIoThreads of minWorkerThreads onder het element <processModel> configuratie in Machine.config, meestal bevindt zich op %SystemRoot%\Microsoft.NET\Framework\[versionNumber]\CONFIG\.It is also possible to specify the minimum threads setting by using the minIoThreads or minWorkerThreads configuration setting under the <processModel> configuration element in Machine.config, usually located at %SystemRoot%\Microsoft.NET\Framework\[versionNumber]\CONFIG\. Het instellen van het aantal minimale threads op deze manier wordt doorgaans niet aanbevolen, omdat het een instelling voor het hele systeem is.Setting the number of minimum threads in this way is generally not recommended, because it is a System-wide setting.

    Notitie

    De waarde die is opgegeven in dit configuratie-element is een instelling per kern .The value specified in this configuration element is a per-core setting. Als u bijvoorbeeld een computer met vier kernen hebt en u wilt dat uw minIoThreads -instelling 200 tijdens runtime, gebruikt u <processModel minIoThreads="50"/>.For example, if you have a 4-core machine and want your minIoThreads setting to be 200 at runtime, you would use <processModel minIoThreads="50"/>.

Schakel Server GC in om meer door voer te krijgen op de client wanneer stack Exchange. redis wordt gebruiktEnable server GC to get more throughput on the client when using StackExchange.Redis

Als server GC wordt ingeschakeld, kan de client worden geoptimaliseerd en kunnen de prestaties en door voer worden verbeterd wanneer stack Exchange. redis wordt gebruikt.Enabling server GC can optimize the client and provide better performance and throughput when using StackExchange.Redis. Raadpleeg de volgende artikelen voor meer informatie over server GC en hoe u deze kunt inschakelen:For more information on server GC and how to enable it, see the following articles:

Prestatie overwegingen rond verbindingenPerformance considerations around connections

Elke prijs categorie heeft verschillende limieten voor client verbindingen, geheugen en band breedte.Each pricing tier has different limits for client connections, memory, and bandwidth. Hoewel elke grootte van de cache een bepaald aantal verbindingen toestaat, is er aan elke verbinding met redis overhead gekoppeld.While each size of cache allows up to a certain number of connections, each connection to Redis has overhead associated with it. Een voor beeld van een dergelijke overhead is het CPU-en geheugen gebruik als gevolg van TLS/SSL-versleuteling.An example of such overhead would be CPU and memory usage as a result of TLS/SSL encryption. Voor de maximum verbindings limiet voor een bepaalde cache grootte wordt uitgegaan van een licht geladen cache.The maximum connection limit for a given cache size assumes a lightly loaded cache. Als de belasting van de verbindings overhead plus de belasting van client bewerkingen de capaciteit voor het systeem overschrijdt, kan de cache capaciteits problemen ondervinden, zelfs als u de verbindings limiet voor de huidige cache grootte niet overschrijdt.If load from connection overhead plus load from client operations exceeds capacity for the system, the cache can experience capacity issues even if you have not exceeded the connection limit for the current cache size.

Zie Azure cache for redis prijzenvoor meer informatie over de verschillende verbindings limieten voor elke laag.For more information about the different connections limits for each tier, see Azure Cache for Redis pricing. Zie standaard redis-server configuratievoor meer informatie over verbindingen en andere standaard configuraties.For more information about connections and other default configurations, see Default Redis server configuration.

Hoe kan ik de status en prestaties van mijn cache controleren?How do I monitor the health and performance of my cache?

Microsoft Azure cache voor redis-instanties kunnen worden bewaakt in de Azure Portal.Microsoft Azure Cache for Redis instances can be monitored in the Azure portal. U kunt metrische gegevens weer geven, metrische grafieken vastmaken aan het start Board, het datum-en tijds bereik van bewakings grafieken aanpassen, metrische gegevens aan de grafieken toevoegen en verwijderen, en waarschuwingen instellen wanneer aan bepaalde voor waarden wordt voldaan.You can view metrics, pin metrics charts to the Startboard, customize the date and time range of monitoring charts, add and remove metrics from the charts, and set alerts when certain conditions are met. Zie Azure-cache bewaken voor redisvoor meer informatie.For more information, see Monitor Azure Cache for Redis.

Het menu Azure cache for redis resource bevat ook verschillende hulpprogram ma's voor het controleren en oplossen van problemen met uw caches.The Azure Cache for Redis Resource menu also contains several tools for monitoring and troubleshooting your caches.

  • Problemen vaststellen en oplossen biedt informatie over veelvoorkomende problemen en strategieën voor het oplossen ervan.Diagnose and solve problems provides information about common issues and strategies for resolving them.
  • De resource status houdt uw resource in de gaten en vertelt u of deze wordt uitgevoerd zoals verwacht.Resource health watches your resource and tells you if it's running as expected. Zie overzicht van Azure resource Healthvoor meer informatie over de Azure resource Health-Service.For more information about the Azure Resource health service, see Azure Resource health overview.
  • Nieuwe ondersteunings aanvraag biedt opties voor het openen van een ondersteunings aanvraag voor uw cache.New support request provides options to open a support request for your cache.

Met deze hulpprogram ma's kunt u de status van uw Azure-cache bewaken voor redis-instanties en helpt u bij het beheren van uw cache toepassingen.These tools enable you to monitor the health of your Azure Cache for Redis instances and help you manage your caching applications. Zie voor meer informatie de sectie ' ondersteuning voor het oplossen van problemen &-instellingen ' van het configureren van Azure cache voor redis.For more information, see the "Support & troubleshooting settings" section of How to configure Azure Cache for Redis.

Waarom kan ik time-outs bekijken?Why am I seeing timeouts?

Time-outs doen zich voor op de client die u gebruikt om te praten met redis.Timeouts happen in the client that you use to talk to Redis. Wanneer een opdracht wordt verzonden naar de redis-server, wordt de opdracht in de wachtrij geplaatst en wordt de redis-server uiteindelijk de opdracht verzameld en wordt deze uitgevoerd.When a command is sent to the Redis server, the command is queued up and Redis server eventually picks up the command and executes it. De client kan echter een time-out hebben tijdens dit proces en als er een uitzonde ring optreedt op de aanroepende zijde.However the client can time out during this process and if it does an exception is raised on the calling side. Zie problemen met de time-out op de client en stack Exchange. redisvoor meer informatie over het oplossen van problemen met time-outs.For more information on troubleshooting timeout issues, see client-side troubleshooting and StackExchange.Redis timeout exceptions.

Waarom is de verbinding tussen mijn client en de cache verbroken?Why was my client disconnected from the cache?

Hier volgen enkele veelvoorkomende redenen voor het verbreken van een cache.The following are some common reason for a cache disconnect.

  • Oorzaken van de clientClient-side causes
    • De client toepassing is opnieuw geïmplementeerd.The client application was redeployed.
    • De client toepassing heeft een schaal bewerking uitgevoerd.The client application performed a scaling operation.
      • In het geval van Cloud Services of Web Apps kan dit worden veroorzaakt door automatisch schalen.In the case of Cloud Services or Web Apps, this may be due to autoscaling.
    • De laag van het netwerk aan de client zijde is gewijzigd.The networking layer on the client side changed.
    • Er zijn tijdelijke fouten opgetreden in de client of in de netwerk knooppunten tussen de client en de server.Transient errors occurred in the client or in the network nodes between the client and the server.
    • De drempel waarden voor de band breedte zijn bereikt.The bandwidth threshold limits were reached.
    • Het duurt te lang om aan de CPU gebonden bewerkingen te volt ooien.CPU bound operations took too long to complete.
  • Oorzaken die zich aan de server zijde bevindtServer-side causes
    • Op de standaard cache aanbieding heeft de service Azure cache for redis een failover geïnitieerd van het primaire knoop punt naar het secundaire knoop punt.On the standard cache offering, the Azure Cache for Redis service initiated a fail-over from the primary node to the secondary node.
    • Het exemplaar waarop de cache is geïmplementeerd, is door Azure bijgewerktAzure was patching the instance where the cache was deployed
      • Dit kan zijn voor redis-server updates of algemeen VM-onderhoud.This can be for Redis server updates or general VM maintenance.

Welke Azure Cache-aanbieding is juist voor mij?Which Azure Cache offering is right for me?

Belangrijk

Na de aankondigingvan vorig jaar zijn de Azure Managed cache service-en Azure in-Role cache-Services buiten gebruik gesteld op 30 november 2016.As per last year's announcement, Azure Managed Cache Service and Azure In-Role Cache service have been retired on November 30, 2016. Onze aanbeveling is Azure cache te gebruiken voor redis.Our recommendation is to use Azure Cache for Redis. Zie migreren van Managed cache service naar Azure cache voor redisvoor informatie over het migreren van.For information on migrating, see Migrate from Managed Cache Service to Azure Cache for Redis.

Azure Cache voor RedisAzure Cache for Redis

Azure cache voor redis is algemeen beschikbaar in grootten tot 120 GB en heeft een SLA voor de beschik baarheid van 99,9%.Azure Cache for Redis is Generally Available in sizes up to 120 GB and has an availability SLA of 99.9%. De nieuwe Premium-laag biedt een grootte van maxi maal 1,2 TB en ondersteuning voor clustering, VNET en persistentie, met een SLA van 99,9%.The new premium tier offers sizes up to 1.2 TB and support for clustering, VNET, and persistence, with a 99.9% SLA.

Azure cache voor redis biedt klanten de mogelijkheid om een beveiligde, toegewezen Azure-cache voor redis te gebruiken, die wordt beheerd door micro soft.Azure Cache for Redis gives customers the ability to use a secure, dedicated Azure Cache for Redis, managed by Microsoft. Met deze aanbieding kunt u gebruikmaken van de uitgebreide functies en ecosystemen die worden geboden door redis, en betrouw bare hosting en controle van micro soft.With this offer, you get to leverage the rich feature set and ecosystem provided by Redis, and reliable hosting and monitoring from Microsoft.

In tegens telling tot traditionele caches die alleen omgaan met sleutel-waardeparen, is redis populair voor de zeer hoogwaardige gegevens typen.Unlike traditional caches that deal only with key-value pairs, Redis is popular for its highly performant data types. Redis biedt ook ondersteuning voor het uitvoeren van atomische bewerkingen op deze typen, zoals het toevoegen aan een teken reeks. de waarde in een hash verhogen; pushen naar een lijst; Computing set, samen voeging en verschil; of het lid met de hoogste rang schikking in een gesorteerde set ophalen.Redis also supports running atomic operations on these types, like appending to a string; incrementing the value in a hash; pushing to a list; computing set intersection, union and difference; or getting the member with highest ranking in a sorted set. Andere functies zijn onder meer ondersteuning voor trans acties, pub/sub, Lua scripting, sleutels met beperkte time-to-Live en configuratie-instellingen om ervoor te zorgen dat redis meer lijkt op een traditionele cache.Other features include support for transactions, pub/sub, Lua scripting, keys with a limited time-to-live, and configuration settings to make Redis behave more like a traditional cache.

Een ander belang rijk aspect voor redis succes is het gezonde, levendige open source-ecosysteem dat erop is gebouwd.Another key aspect to Redis success is the healthy, vibrant open- source ecosystem built around it. Dit wordt weer gegeven in de verschillende set redis-clients die beschikbaar zijn in meerdere talen.This is reflected in the diverse set of Redis clients available across multiple languages. Met dit ecosysteem en een breed scala aan clients kan Azure cache voor redis worden gebruikt door bijna elke werk belasting die u in azure zou bouwen.This ecosystem and wide range of clients allow Azure Cache for Redis to be used by nearly any workload you would build inside of Azure.

Voor meer informatie over het aan de slag gaan met Azure cache voor redis raadpleegt u Azure cache gebruiken voor redis en Azure cache voor redis-documentatie.For more information about getting started with Azure Cache for Redis, see How to Use Azure Cache for Redis and Azure Cache for Redis documentation.

Managed cache serviceManaged Cache service

Managed cache service is buiten gebruik gesteld op 30 november 2016.Managed Cache service was retired November 30, 2016.

Zie gearchiveerde Managed cache service documentatievoor informatie over het weer geven van gearchiveerde documentatie.To view archived documentation, see Archived Managed Cache Service Documentation.

In-Role CacheIn-Role Cache

In-Role Cache is buiten gebruik gesteld op 30 november 2016.In-Role Cache was retired November 30, 2016.

Zie gearchiveerde in-Role cache documentatievoor informatie over het weer geven van gearchiveerde documentatie.To view archived documentation, see Archived In-Role Cache Documentation.