Sdílet prostřednictvím


Řešení potíží se servery služby Azure Cache for Redis

Tato část popisuje řešení potíží způsobených podmínkami na serveru Azure Cache for Redis nebo některém z virtuálních počítačů, které ho hostují.

Poznámka:

Několik kroků pro řešení potíží v této příručce obsahuje pokyny ke spuštění příkazů Redis a monitorování různých metrik výkonu. Další informace a pokyny najdete v článcích v části Další informace .

Vysoké zatížení serveru

Vysoké zatížení serveru znamená, že je server Redis zaneprázdněný a nedokáže držet krok s požadavky, což vede k vypršení časových limitů. V mezipaměti zkontrolujte metriku Načtení serveru tak , že v nabídce Prostředek na levé straně vyberete Monitorování . Graf Načtení serveru se zobrazí v pracovním podokně v části Přehledy. Nebo přidejte metriku nastavenou na zatížení serveru v části Metriky.

Následuje několik možností, které je vhodné zvážit při vysokém zatížení serveru.

Vertikální navýšení kapacity nebo horizontální navýšení kapacity

Horizontálně navyšte kapacitu a přidejte další horizontální oddíly, aby se zatížení distribuoval napříč několika procesy Redis. Zvažte také vertikální navýšení kapacity na větší velikost mezipaměti s větším využitím jader procesoru. Další informace najdete v nejčastějších dotazech k plánování služby Azure Cache for Redis.

Rychlé změny počtu klientských připojení

Další informace naleznete v tématu Vyhněte se špičkám připojení klienta.

Dlouhotrvající nebo nákladné příkazy

Tento oddíl byl přesunut. Další informace najdete v tématu Dlouhotrvající příkazy.

Škálování

Operace škálování jsou náročné na procesor a paměť, protože by mohly zahrnovat přesun dat kolem uzlů a změnu topologie clusteru. Další informace najdete v tématu Škálování.

Údržba serveru

Pokud vaše služba Azure Cache for Redis prošla převzetím služeb při selhání, všechna klientská připojení z uzlu, který je mimo provoz, se přenesou do uzlu, který je stále spuštěný. Zatížení serveru se může zvýšit kvůli zvýšenému počtu připojení. Můžete zkusit restartovat klientské aplikace, aby se všechna připojení klientů znovu vytvořila a redistribuovala mezi oba uzly.

Vysoké využití paměti

Zatížení paměti na serveru může vést k různým problémům s výkonem, které zpožďují zpracování požadavků. Když dojde k zatížení paměti, systém stránkuje data na disk, což způsobí výrazné zpomalení systému.

Tady je několik možných příčin zatížení paměti:

  • Mezipaměť se vyplní daty v blízkosti své maximální kapacity.
  • U serveru Redis dochází k vysoké fragmentaci paměti

Fragmentace je pravděpodobně způsobena tím, že vzor zatížení ukládá data s vysokou velikostí. K fragmentaci může dojít například v případě, že jsou data rozložená do velikosti 1 kB a 1 MB. Když se klíč o velikosti 1 kB odstraní z existující paměti, klíč o velikosti 1 MB se do něj nevejde, což způsobuje fragmentaci. Podobně platí, že pokud se odstraní klíč o velikosti 1 MB a přidá se klíč o velikosti 1,5 MB, nemůže se vejít do existující uvolněné paměti. To způsobuje nevyužitou volnou paměť a vede k větší fragmentaci.

used_memory_rss Pokud je hodnota vyšší než 1,5krát used_memory metrika, dochází k fragmentaci paměti. Fragmentace může způsobit problémy v následujících případech:

  1. Využití paměti se blíží maximálnímu limitu paměti pro mezipaměť nebo
  2. UsedMemory_RSS je vyšší než maximální limit paměti, což může mít za následek chybu stránky v paměti.

Pokud je mezipaměť fragmentovaná a běží pod vysokým zatížením paměti, systém provede převzetí služeb při selhání a pokusí se obnovit paměť RSS (Resident Set Size).

Redis zveřejňuje dva statistiky a prostřednictvím used_memory_rsspříkazu INFO, used_memory který vám pomůže tento problém identifikovat. Tyto metriky můžete zobrazit pomocí portálu.

Ověřte, že maxmemory-reserved jsou hodnoty maxfragmentationmemory-reserved správně nastavené.

Pokud chcete pomoct zajistit, aby využití paměti bylo v pořádku, můžete provést několik změn:

  • Nakonfigurujte zásady paměti a nastavte časy vypršení platnosti vašich klíčů. Pokud dochází k fragmentaci, tyto zásady nemusí být dostatečné.
  • Nakonfigurujte maximální rezervovanou hodnotu , která je dostatečně velká, aby se kompenzuje fragmentace paměti.
  • Vytvořte upozornění na metriky, jako je metrika využité paměti, abyste včas dostávali upozornění na potenciální dopady.
  • Škálování na větší velikost mezipaměti s větší kapacitou paměti Další informace najdete v nejčastějších dotazech k plánování služby Azure Cache for Redis.

Doporučení ke správě paměti najdete v tématu Osvědčené postupy pro správu paměti.

Dlouhotrvající příkazy

Tento oddíl byl přesunut. Další informace najdete v tématu Dlouhotrvající příkazy.

Omezení šířky pásma na straně serveru

Tento oddíl byl přesunut. Další informace najdete v tématu Omezení šířky pásma sítě.

Další informace