Sdílet prostřednictvím


Škálování instance Azure Cache for Redis

Azure Cache for Redis nabízí různé úrovně, které poskytují flexibilitu při výběru velikosti a funkcí mezipaměti. Při škálování můžete po vytvoření instance mezipaměti změnit velikost, vrstvu a počet uzlů tak, aby odpovídaly potřebám vaší aplikace. V tomto článku se dozvíte, jak škálovat mezipaměť pomocí webu Azure Portal a nástrojů, jako je Azure PowerShell a Azure CLI.

Typy škálování

V zásadě existují dva způsoby škálování instance Azure Cache for Redis:

  • Vertikální navýšení kapacity zvyšuje velikost virtuálního počítače, na kterém běží server Redis, a přidává další paměť, virtuální procesory (vCPU) a šířku pásma sítě. Vertikální škálování se také označuje jako vertikální škálování. Opakem škálování nahoru je škálování dolů.

  • Škálování rozdělí instanci mezipaměti na více uzlů stejné velikosti, čímž umožní paralelní zvýšení paměti, vCPU a šířky pásma sítě. Horizontální navýšení kapacity se také označuje jako horizontální škálování nebo horizontální dělení. Opakem horizontálního navýšení kapacity je horizontální snížení kapacity. V komunitě Redis se škálování často označuje jako clustering.

Rozsah dostupnosti

Úroveň Basic a Standard Prémium Enterprise a Enterprise Flash
Vertikálně navýšit kapacitu Ano Ano Ano
Vertikálně snížit kapacitu Ano Ano Ne
Škálování na více instancí Ne Ano Ano
Horizontální snížení kapacity Ne Ano Ne

Kdy škálovat

Ke sledování stavu a výkonu mezipaměti můžete použít funkce monitorování služby Azure Cache for Redis. Tyto informace slouží k určení, kdy se má mezipaměť škálovat.

Pokud potřebujete škálovat, můžete monitorovat následující metriky.

  • Zatížení serveru Redis
    • Vysoké zatížení serveru Redis znamená, že server nemůže držet krok s požadavky ze všech klientů. Vzhledem k tomu, že server Redis je jednovláknový proces, je obvykle užitečnější škálovat horizontálně než škálovat vertikálně. Horizontální navýšení kapacity povolením clusteringu pomáhá distribuovat režijní funkce napříč několika procesy Redis. Horizontální navýšení kapacity také pomáhá distribuovat šifrování/dešifrování protokolu TLS a připojení/odpojení a zrychlit instance mezipaměti pomocí protokolu TLS.
    • Vertikální navýšení kapacity může být stále užitečné při snižování zatížení serveru, protože úlohy na pozadí můžou využívat více virtuálních procesorů a uvolnit vlákno pro hlavní proces serveru Redis.
    • Úrovně Enterprise a Enterprise Flash používají Redis Enterprise místo open source Redis. Jednou z výhod těchto úrovní je, že proces serveru Redis může využívat více virtuálních procesorů. S několika virtuálními procesory může být horizontální navýšení kapacity i horizontální navýšení kapacity v těchto úrovních užitečné při snížení zatížení serveru.
  • Využití paměti
    • Vysoké využití paměti znamená, že pro aktuální velikost mezipaměti používáte příliš rozsáhlá data. Zvažte škálování na mezipaměť s větší pamětí. Buď škálování nahoru nebo škálování ven je zde efektivní.
  • Klientská připojení
    • Každá velikost mezipaměti má limit počtu klientských připojení, která může podporovat. Pokud se připojení klientů blíží limitu velikosti mezipaměti, zvažte vertikální navýšení kapacity na větší úroveň. Horizontální navýšení kapacity nezvyšuje počet podporovaných klientských připojení.
    • Další informace o omezeních připojení podle velikosti mezipaměti najdete v tématu Ceny služby Azure Cache for Redis.
  • Šířka pásma sítě
    • Když server Redis překročí dostupnou šířku pásma, může požadavkům klientů vypršet časový limit, protože server nemůže odesílat data klientovi dostatečně rychle. Pokud chcete zjistit využití šířky pásma na straně serveru, můžete použít metriky Čtení z mezipaměti a Zápisy do mezipaměti. Pokud váš server Redis překračuje dostupnou šířku pásma sítě, měli byste zvážit horizontální navýšení kapacity nebo vertikální navýšení kapacity na větší velikost mezipaměti s větší šířkou pásma sítě.
    • U cache podnikové úrovně používajících zásady clusteru Enterprise, horizontální navýšení kapacity nezvyšuje šířku pásma sítě.
    • Další informace o dostupné šířce pásma sítě podle velikosti mezipaměti najdete v nejčastějších dotazech k plánování služby Azure Cache for Redis.
  • Interní kontroly v programu Defender
    • U mezipamětí C0 a C1 Standard se v době, kdy na virtuálních počítačích probíhá interní kontrola Defenderu, se mohou objevit krátké špičky v zatížení serveru, které nejsou způsobeny nárůstem požadavků na mezipaměť. Při interních kontrolách Defenderu se na těchto úrovních několikrát denně zobrazuje vyšší latence požadavků. Mezipaměti na úrovních C0 a C1 mají pouze jedno jádro pro multitasking, rozdělující úlohu mezi interní kontrolu Defenderu a požadavky Redis. Účinek můžete snížit škálováním na vyšší úroveň nabídky s více jádry procesoru, například C2.
    • Zvýšená velikost mezipaměti na vyšších úrovních pomáhá řešit případné problémy s latencí. Na úrovni C2 máte také podporu až pro 2 000 klientských připojení.

Další informace o určení cenové úrovně mezipaměti, která se má použít, najdete v tématu Výběr správné úrovně a nejčastějších dotazů k plánování služby Azure Cache for Redis.

Poznámka:

Další informace o optimalizaci procesu škálování najdete v doporučených postupech pro průvodce škálováním.

Požadavky a omezení škálování služby Azure Cache for Redis

Kapacitu můžete vertikálně navýšit nebo snížit na jinou cenovou úroveň s následujícími omezeními:

  • Nemůžete škálovat z vyšší cenové úrovně na nižší cenovou úroveň.
    • Z mezipaměti Enterprise nebo Enterprise Flash nejde škálovat na jinou úroveň.
    • Nejde škálovat z mezipaměti Premium dolů na mezipaměť Standard nebo Základní.
    • Nejde škálovat z mezipaměti Standard dolů do mezipaměti Basic .
  • Můžete škálovat z mezipaměti Basic na mezipaměť Standard, ale nemůžete změnit velikost současně. Pokud potřebujete jinou velikost, můžete později provést operaci škálování na požadovanou velikost.
  • Nemůžete škálovat z mezipaměti Basic přímo do mezipaměti Premium . Nejprve proveďte škálování z úrovně Basic na Standard v jedné operaci škálování a potom z úrovně Standard na Premium v další operaci škálování.
  • Nemůžete škálovat z větší velikosti na velikost C0 (250 MB). Můžete se ale škálovat na libovolnou jinou velikost ve stejné cenové úrovni. Můžete například škálovat z C5 Standard na C1 Standard.
  • Nejde škálovat z mezipaměti Premium, Standard nebo Basic až do mezipaměti Enterprise nebo Enterprise Flash .
  • Nejde škálovat mezi Enterprise a Enterprise Flashem.

Horizontální navýšení/snížení kapacity můžete provést s následujícími omezeními:

  • Horizontální navýšení kapacity se podporuje jenom na úrovních Premium, Enterprise a Enterprise Flash .
  • Škálování vstříc je podporováno jenom na úrovni Premium.
  • Na úrovni Premium musí být nejdříve povolen clustering před škálováním nahoru nebo dolů.
  • Na úrovni Premium je obecně dostupná podpora pro škálování až na 10 oddílů. Podpora až 30 horizontálních oddílů je ve verzi Preview. (Pro mezipaměti se dvěma replikami je limit horizontálního dělení 20. Se třemi replikami je limit horizontálních oddílů 15.)
  • Pouze úrovně Enterprise a Enterprise Flash mohou škálovat nahoru a současně škálovat horizontálně.

Škálování – úrovně Basic, Standard a Premium

Vertikální navýšení a snížení kapacity pomocí webu Azure Portal

  1. Chcete-li škálovat mezipaměť, přejděte do mezipaměti v Azure portálu a v nabídce Prostředek vyberte Škálovat.

    Snímek obrazovky znázorňující škálování v nabídce prostředků

  2. V pracovním podokně zvolte cenovou úroveň a pak zvolte Vybrat.

    Snímek obrazovky znázorňující úrovně Azure Cache for Redis

  3. Zatímco se mezipaměť škáluje na novou úroveň, zobrazí se oznámení o škálování redis Cache .

    Snímek obrazovky s oznámením o škálování

  4. Po dokončení škálování se stav změní ze Škálování na Spuštěno.

Poznámka:

Při vertikálním navýšení nebo snížení kapacity mezipaměti pomocí portálu se nastavení maxmemory-reservedmaxfragmentationmemory-reserved automaticky škáluje v poměru k velikosti mezipaměti. Pokud maxmemory-reserved je například nastavená na 3 GB v 6GB mezipaměti a škálujete na 12 GB mezipaměti, nastavení se během škálování automaticky aktualizuje na 6 GB. Když vertikálně snížit kapacitu, stane se obráceně.

Vertikální navýšení a snížení kapacity pomocí PowerShellu

Instance Azure Cache for Redis můžete škálovat pomocí PowerShellu pomocí rutiny Set-AzRedisCache při úpravě Sizenebo Sku vlastností. Následující příklad ukazuje, jak škálovat mezipaměť s názvem myCache na 6 GB mezipaměti ve stejné vrstvě.

   Set-AzRedisCache -ResourceGroupName myGroup -Name myCache -Size 6GB

Další informace o škálování pomocí PowerShellu najdete v tématu Škálování služby Azure Cache for Redis pomocí PowerShellu.

Vertikální navýšení a snížení kapacity pomocí Azure CLI

Pokud chcete škálovat instance Azure Cache for Redis pomocí Azure CLI, zavolejte příkaz az redis update . sku.capacity Pomocí vlastnosti můžete škálovat v rámci vrstvy, například z mezipaměti Standard C0 do mezipaměti Standard C1:

az redis update --cluster-name myCache --resource-group myGroup --set "sku.capacity"="2"

Pomocí vlastností sku.name a sku.family můžete vertikálně navýšit kapacitu na jinou úroveň, například z mezipaměti Standard C1 do mezipaměti Premium P1:

az redis update --cluster-name myCache --resource-group myGroup --set "sku.name"="Premium" "sku.capacity"="1" "sku.family"="P"

Další informace o škálování pomocí Azure CLI najdete v tématu Změna nastavení existující služby Azure Cache for Redis.

Poznámka:

Když škálujete mezipaměť programově nahoru nebo dolů (např. pomocí PowerShellu nebo Azure CLI), všechny maxmemory-reserved nebo maxfragmentationmemory-reserved se v rámci žádosti o aktualizaci ignorují. Je dodržena pouze vaše změna škálování. Po dokončení operace škálování můžete tato nastavení paměti aktualizovat.