konfigurace clusteringu Redis pro Premium Azure Cache pro instanci Redis

Azure cache for Redis nabízí cluster Redis, jak je implementován v Redis. S clusterem Redis získáte následující výhody:

  • Schopnost automaticky rozdělit datovou sadu mezi více uzlů.
  • Možnost pokračovat v operacích, když dojde k selhání podmnožiny uzlů nebo nelze komunikovat se zbytkem clusteru.
  • Větší propustnost: propustnost se při zvýšení počtu horizontálních oddílů zvyšuje lineárně.
  • Větší velikost paměti: při zvýšení počtu horizontálních oddílů se zvyšuje lineárně.

Clustering nezvyšuje počet připojení dostupných pro clusterovou mezipaměť. Další informace o velikosti, propustnosti a šířce pásma pomocí prémiových mezipamětí najdete v tématu Volba správné úrovně .

V Azure se cluster Redis nabízí jako model primární/repliky, kde každý horizontálních oddílů má dvojici primárního/repliky s replikací, kde je replikace spravovaná službou Azure cache pro službu Redis.

Nastavení clusteringu

Clustering je na levé straně při vytváření mezipaměti povolená nová mezipaměť Azure pro Redis .

  1. Pokud chcete vytvořit mezipaměť úrovně Premium, přihlaste se k Azure Portal a vyberte vytvořit prostředek. Kromě vytváření mezipamětí v Azure Portal můžete je také vytvořit pomocí šablon Správce prostředků, PowerShellu nebo rozhraní příkazového řádku Azure CLI. Další informace o vytvoření mezipaměti Azure pro Redis najdete v tématu vytvoření mezipaměti.

    Create resource.

  2. Na stránce Nový vyberte databáze a pak vyberte Azure cache pro Redis.

    Select Azure Cache for Redis.

  3. Na stránce nový Redis Cache nakonfigurujte nastavení pro novou mezipaměť Premium.

    Nastavení Navrhovaná hodnota Popis
    Název DNS Zadejte globálně jedinečný název. Název mezipaměti musí být řetězec v rozmezí 1 až 63 znaků. Řetězec může obsahovat pouze čísla, písmena a spojovníky. Název musí začínat a končit číslicí nebo písmenem a nesmí obsahovat po sobě jdoucí spojovníky. Název hostitele vaší instance mezipaměti bude název DNS . Redis.cache.Windows.NET.
    Předplatné Rozevírací seznam a vyberte své předplatné. Předplatné, ve kterém se má vytvořit Tato nová mezipaměť Azure pro instanci Redis
    Skupina prostředků Rozevírací seznam a vyberte skupinu prostředků nebo vyberte vytvořit novou a zadejte nový název skupiny prostředků. Název skupiny prostředků, ve které se má vytvořit mezipaměť a další prostředky Po uložení všech prostředků vaší aplikace do jedné skupiny prostředků je můžete snadno spravovat nebo odstraňovat společně.
    Umístění Rozevírací seznam a vyberte umístění. Vyberte oblast poblíž jiných služeb, které budou používat vaši mezipaměť.
    Typ mezipaměti Rozevírací seznam a vyberte mezipaměť Premium pro konfiguraci prémiových funkcí. Podrobnosti najdete v tématu ceny služby Azure cache pro Redis. Cenová úroveň určuje velikost, výkon a funkce, které jsou k dispozici pro danou mezipaměť. Další informace najdete v tématu Přehled služby Azure cache pro Redis.
  4. Vyberte kartu síť nebo klikněte na tlačítko sítě v dolní části stránky.

  5. Na kartě sítě vyberte metodu připojení. U instancí služby Premium cache se můžete připojit veřejně, prostřednictvím veřejných IP adres nebo koncových bodů služby nebo soukromě pomocí privátního koncového bodu.

  6. Vyberte kartu Další: Upřesnit nebo vyberte tlačítko Další: Upřesnit v dolní části stránky.

  7. Na kartě Upřesnit u instance mezipaměti úrovně Premium nakonfigurujte nastavení pro port bez TLS, clusteringu a trvalost dat. Pokud chcete povolit clusteringu, vyberte Povolit.

    Clustering toggle.

    V clusteru můžete mít až 10 horizontálních oddílů. Po výběru možnosti Povolitposuňte posuvník nebo zadejte číslo od 1 do 10 pro horizontálních oddílů Count a vyberte OK.

    Každý horizontálních oddílů je pár mezipaměti primárního/repliky, který spravuje Azure, a celková velikost mezipaměti se počítá vynásobením počtu horizontálních oddílů velikostí mezipaměti vybranou v cenové úrovni.

    Clustering toggle selected.

    Po vytvoření mezipaměti se k ní připojíte a použijete ji stejně jako mezipaměť bez clusterů. Redis distribuuje data v celé mezipaměti horizontálních oddílů. Pokud je povolenádiagnostika, jsou metriky zachyceny samostatně pro každý horizontálních oddílů a lze je Zobrazit v Azure cache pro Redis na levé straně.

  8. Vyberte kartu Další: značky nebo vyberte tlačítko Další: značky v dolní části stránky.

  9. Volitelně můžete na kartě značky zadat název a hodnotu, pokud chcete prostředek zařadit do kategorií.

  10. Vyberte Zkontrolovat a vytvořit. Přejdete na kartu Revize + vytvořit, kde Azure ověřuje vaši konfiguraci.

  11. Po zobrazení zprávy se zobrazeným zeleným ověřením vyberte vytvořit.

Vytvoření mezipaměti trvá nějakou dobu. Průběh můžete sledovat na stránce Přehled služby Azure cache pro Redis. Pokud se stav zobrazuje jako spuštěno, mezipaměť je připravena k použití.

Poznámka

Při konfiguraci clusteringu se v klientské aplikaci vyžadují některé menší rozdíly. Další informace najdete v tématu musím dělat změny v klientské aplikaci, aby používaly clustering?

Vzorový kód při práci s Clustering s klientem StackExchange. Redis najdete v části věnované clusteringu. cs v ukázce Hello World .

Změna velikosti clusteru v běžící mezipaměti Premium

Pokud chcete změnit velikost clusteru běžící mezipaměti Premium s povoleným clusteringem, vyberte Velikost clusteru v nabídce prostředek.

Redis cluster size

Chcete-li změnit velikost clusteru, použijte posuvník nebo zadejte číslo od 1 do 10 v textovém poli horizontálních oddílů Count . Pak kliknutím na OK uložte.

Zvýšení velikosti clusteru zvyšuje maximální propustnost a velikost mezipaměti. Zvýšení velikosti clusteru nezvyšuje maximální počet připojení, která jsou k dispozici pro klienty.

Poznámka

Při škálování clusteru se spustí příkaz migrace , což je nákladný příkaz, takže pro minimální dopad zvažte spuštění této operace v době mimo špičku. Během procesu migrace se zobrazí špička zatížení serveru. Škálování clusteru je dlouhotrvající proces a doba trvání závisí na počtu klíčů a velikosti hodnot přidružených k těmto klíčům.

Nejčastější dotazy týkající se clusteringu

Následující seznam obsahuje odpovědi na nejčastější dotazy týkající se clusteringu Azure cache pro Redis.

Musím v klientské aplikaci dělat nějaké změny, aby používaly clustering?

Jak jsou klíče distribuované v clusteru?

V dokumentaci k modelu distribuce klíčů Redis: klíčový prostor je rozdělen na 16384 slotů. Každý klíč se vyhodnotí jako hash a přiřadí se k jednomu z těchto slotů, které se distribuují napříč uzly clusteru. Můžete nakonfigurovat, která část klíče má hodnotu hash, aby bylo zajištěno, že se ve stejném horizontálních oddílů pomocí značek hash nachází více klíčů.

  • Klíče se značkami hash – Pokud je libovolná část klíče uzavřená v { a } , pro účely určení slotu hodnoty hash klíče se hodnota hash vyhodnotí jenom pro tuto část klíče. Například následující tři klíče by se nacházely ve stejném horizontálních oddílů:, a vzhledem k tomu, že {key}1{key}2{key}3 pouze key část názvu je nastavena na hodnotu hash. Úplný seznam klíčových specifikací hash klíčů najdete v tématu klíče hash klíčů.
  • Klíče bez značky hash – celý název klíče se používá k vytvoření hodnoty hash a výsledkem je statistická i distribuce napříč horizontálních oddílů mezipaměti.

Pro dosažení nejlepšího výkonu a propustnosti doporučujeme, aby byly klíče rovnoměrně distribuovány. Pokud používáte klíče se značkou hash, je to zodpovědnost aplikace za účelem zajištění rovnoměrné distribuce klíčů.

Další informace najdete v tématech model distribuce klíčů, Redis data horizontálního dělení clusterua klíče hash klíčů.

Vzorový kód týkající se práce s clusteringem a hledáním klíčů ve stejném horizontálních oddílů s klientem StackExchange. Redis najdete v části věnované clusteringu. cs v ukázce Hello World .

Jaká je největší velikost mezipaměti, kterou můžu vytvořit?

Největší velikost mezipaměti můžete mít 1,2 TB. To bude Clusterová mezipaměť P5 s 10 horizontálních oddílů. Další informace najdete v tématu ceny služby Azure cache pro Redis.

Podporují clustering všichni klienti Redis?

Mnoho klientů podporuje Redis clusteringu, ale ne všechny. Podívejte se do dokumentace ke knihovně, kterou používáte, abyste ověřili, že používáte knihovnu a verzi podporující clusteringu. StackExchange. Redis je jedna knihovna, která podporuje clusteringu v novějších verzích. Další informace o dalších klientech naleznete v části přehrávání v clusteru v kurzu cluster Redis.

Protokol clusteringu Redis vyžaduje, aby se každý klient připojoval ke každému horizontálních oddílů přímo v režimu clusteringu a taky definoval nové odpovědi na chyby, jako je "PŘESUNUTý" na "CROSSSLOTS". Když se pokusíte použít klienta, který nepodporuje clusteringu, s mezipamětí režimu clusteru, může být výsledkem mnoho přesunutých výjimek přesměrovánínebo pouze přerušení aplikace, pokud provádíte více než více slotů požadavků na více klíčů.

Poznámka

Pokud jako klienta používáte StackExchange. Redis, ujistěte se, že pro správné fungování clusteringu používáte nejnovější verzi stackexchange. Redis 1.0.481 nebo novější. Další informace o problémech s přesunutím výjimek naleznete v tématu Move Exceptions.

Návody se připojit k mezipaměti, když je clustering povolený?

Ke své mezipaměti se můžete připojit pomocí stejných koncových bodů, portůa klíčů , které používáte při připojování k mezipaměti, u které není povolený clusteringu. Redis spravuje clustering v back-endu, takže je nemusíte spravovat od svého klienta.

Můžu se přímo připojit k jednotlivým horizontálních oddílů své mezipaměti?

Protokol clusteringu vyžaduje, aby klient provedl správná připojení horizontálních oddílů, takže by měl klient pro vás sdílet připojení. V takovém případě se každý horizontálních oddílů skládá z dvojice mezipaměti primárního/repliky, která je souhrnně známá jako instance mezipaměti. K těmto instancím mezipaměti se můžete připojit pomocí nástroje Redis-CLI v nestabilní větvi úložiště redis na GitHub. Tato verze implementuje základní podporu při spuštění s -c přepínačem. Další informace najdete v tématu přehrávání s clusterem v v kurzu cluster Redis.

Pro jiné než TLS použijte následující příkazy.

Redis-cli.exe –h <<cachename>> -p 13000 (to connect to instance 0)
Redis-cli.exe –h <<cachename>> -p 13001 (to connect to instance 1)
Redis-cli.exe –h <<cachename>> -p 13002 (to connect to instance 2)
...
Redis-cli.exe –h <<cachename>> -p 1300N (to connect to instance N)

V případě protokolu TLS Nahraďte parametr 1300N1500N .

Můžu nakonfigurovat clustering pro dříve vytvořenou mezipaměť?

Ano. Nejdřív se ujistěte, že je vaše mezipaměť Premium, a to tak, že se škáluje. V dalším kroku uvidíte možnosti konfigurace clusteru včetně možnosti Povolit cluster. Změňte velikost clusteru po vytvoření mezipaměti nebo po prvním povolení clusteringu.

Důležité

Nemůžete zrušit povolování clusteringu. A povolená mezipaměť s podporou clusteringu a jenom jedna horizontálních oddílů se chová jinak než mezipaměť stejné velikosti bez clusteringu.

Můžu nakonfigurovat clustering pro mezipaměť Basic nebo Standard?

Clustering je k dispozici jenom pro mezipaměti úrovně Premium.

můžu použít clusteringu s Redis ASP.NET stav relace a Ukládání do mezipaměti poskytovatelé výstupu?

Mám při používání StackExchange. Redis a clusteringu k dispozici výjimky při PŘESUNu?

Pokud používáte StackExchange. Redis a MOVE při použití clusteringu přijímají výjimky, ujistěte se, že používáte MOVE nebo novější. Pokyny ke konfiguraci aplikací .NET pro použití StackExchange. Redis najdete v tématu Konfigurace klientů mezipaměti.

Další kroky

Přečtěte si další informace o funkcích Azure cache pro Redis.