Freigeben über


Problembehandlung für Azure Managed Redis (Vorschau)-Serverprobleme

In diesem Abschnitt wird die Behandlung von Problemen erläutert, die durch Bedingungen auf einem Azure Managed Redis (Vorschau)-Server oder auf einer VM verursacht werden, auf denen er gehostet wird.

Hinweis

Etliche Problembehandlungsschritte in diesem Leitfaden enthalten Anleitungen zum Ausführen von Redis-Befehlen und zum Überwachen verschiedener Leistungsmetriken. Weitere Informationen und Anleitungen finden Sie in den Artikeln im Abschnitt Weitere Informationen .

Hohe CPU-Auslastung

Eine hohe CPU-Auslastung bedeutet, dass der Redis-Server ausgelastet ist und mit Anforderungen nicht Schritt halten kann, was zu Timeouts führt. Überprüfen Sie die Metrik CPU für Ihren Cache, indem Sie im Ressourcenmenü auf der linken Seite die Option Überwachung auswählen. Sie sehen das CPU-Diagramm im Arbeitsbereich unter Insights. Oder fügen Sie unter Metriken einen Metriksatz für CPU hinzu.

Nachfolgend sind einige Optionen aufgeführt, die Sie bei hoher CPU-Auslastung in Betracht ziehen können.

Hochskalieren oder Verschieben auf eine höhere Leistungsstufe

Für eine höhere Leistung sollten Sie das Hochskalieren auf eine größere Cachegröße mit mehr CPU-Kernen in Betracht ziehen. Weitere Informationen finden Sie unter Leistungsstufen.

Schnelle Änderungen bei der Anzahl der Clientverbindungen

Weitere Informationen finden Sie unter Vermeiden von Spitzen bei Clientverbindungen.

Zeit- oder speicherintensive Befehle

Weitere Informationen finden Sie unter Zeitintensive Befehle.

Skalierung

Skalierungsvorgänge sind CPU- und arbeitsspeicherintensiv, da sie das Verschieben von Daten auf Knoten und das Ändern der Clustertopologie umfassen können. Weitere Informationen finden Sie unter Skalieren.

Serverwartung

Wenn für Ihre Azure Managed Redis-Instanz ein Failover ausgeführt wurde, werden alle Clientverbindungen vom Knoten, der ausgefallen ist, an den Knoten übertragen, der noch ausgeführt wird. Bei der CPU-Auslastung könnten aufgrund der höheren Verbindungsanzahl Spitzen auftreten. Sie können versuchen, Ihre Clientanwendungen neu zu starten, damit alle Clientverbindungen neu erstellt und auf die beiden Knoten verteilt werden.

Hohe Speicherauslastung

Eine Arbeitsspeicherauslastung auf dem Server kann zu verschiedenen Leistungsproblemen führen, die die Verarbeitung von Anforderungen verzögern. Wenn eine Arbeitsspeicherauslastung auftritt, werden Daten vom System auf den Datenträger ausgelagert, wodurch es zu einer erheblichen Verlangsamung des Systems kommen kann.

Im Folgenden finden Sie mögliche Ursachen für eine hohe Arbeitsspeicherauslastung:

  • Der Cache ist bis fast zu seiner maximalen Kapazität mit Daten gefüllt.
  • Der Redis-Server stellt eine hohe Fragmentierung des Arbeitsspeichers fest.

Eine Fragmentierung tritt wahrscheinlich auf, wenn ein Auslastungsmuster Daten mit sehr unterschiedlichen Größen speichert. So kann beispielsweise eine Fragmentierung auftreten, wenn Daten zwischen 1 KB und 1 MB groß sind. Wenn ein 1-KB-Schlüssel aus dem vorhandenen Arbeitsspeicher gelöscht wird, passt an dieselbe Stelle kein 1-MB-Schlüssel, was zu einer Fragmentierung führt. Wenn ein 1-MB-Schlüssel gelöscht und ein 1,5-MB-Schlüssel hinzugefügt wird, passt auch dieser nicht in den vorhandenen beanspruchten Arbeitsspeicher. Dies verursacht nicht genutzten freien Arbeitsspeicher und führt zu einer größeren Fragmentierung.

Wenn der Wert used_memory_rss größer als das 1,5-Fache der Metrik used_memory ist, tritt im Arbeitsspeicher eine Fragmentierung auf. Die Fragmentierung kann in folgenden Fällen Probleme verursachen:

  1. Die Speicherauslastung liegt nahe am maximalen Grenzwert für den Cache, oder
  2. UsedMemory_RSS ist höher als der Grenzwert für den maximalen Arbeitsspeicher und führt damit möglicherweise zu Seitenfehlern im Arbeitsspeicher.

Wenn ein Cache fragmentiert ist und unter hoher Arbeitsspeicherauslastung ausgeführt wird, führt das System ein Failover durch, um zu versuchen, den RSS-Arbeitsspeicher (Resident Set Size) wiederherzustellen.

Redis macht mithilfe des Befehls INFO die beiden Statistiken used_memory und used_memory_rss verfügbar, mit denen Sie dieses Problem identifizieren können. Sie können mithilfe des Portals diese Metriken anzeigen.

Sie können mehrere Änderungen vornehmen, um die Speicherauslastung in einem gesunden Rahmen zu halten:

Empfehlungen zur Speicherverwaltung finden Sie unter Speicherverwaltung.

Befehle mit langer Ausführungsdauer

Weitere Informationen finden Sie unter Zeitintensive Befehle.

Serverseitige Bandbreitenbegrenzung

Weitere Informationen finden Sie unter Einschränkung der Netzwerkbandbreite.

Weitere Informationen