Heim >Datenbank >Redis >Eingehende Analyse des Info-Befehls in Redis

Eingehende Analyse des Info-Befehls in Redis

青灯夜游
青灯夜游nach vorne
2021-10-14 10:57:102939Durchsuche

Dieser Artikel stellt Ihnen den Info-Befehl in Redis vor. Ich hoffe, er wird Ihnen hilfreich sein!

Eingehende Analyse des Info-Befehls in Redis

Redis stellt den Info-Befehl bereit, der verschiedene Informationen und statistische Werte über den Redis-Server zurückgibt. Bei der Verwendung von Redis stoßen wir häufig auf einige schwierige Probleme, die eine Fehlerbehebung erfordern. Zu diesem Zeitpunkt können wir den Befehl „info“ verwenden, um den Betriebsstatus von Redis abzurufen und dann das Problem zu beheben. [Verwandte Empfehlungen: Redis-Video-Tutorial]

Durch Angabe des optionalen Parameterabschnitts kann der Befehl nur einen bestimmten Teil der Informationen zurückgeben:

  • Server: Allgemeine Informationen des Redis-Servers

  • Clients: Client Verbindungsabschnitt

  • Speicher: Informationen zum Speicherverbrauch

  • Persistenz: RDB- und AOF-bezogene Informationen

  • Statistiken: Allgemeine Statistiken

  • Replikation: Informationen zur Master/Slave-Replikation.

  • CPU: Statistik-CPU Verbrauch

  • commandstats: Redis-Befehlsstatistiken

  • cluster: Redis-Clusterinformationen

  • keyspace: Datenbankbezogene Statistiken

Es kann auch die folgenden Werte annehmen:

  • all: Alle Informationen zurückgeben
  • Standard: Der Wert gibt die Standardeinstellungsinformationen zurück.

Wenn keine Parameter verwendet werden, ist der Standardwert Standard und alle Informationen werden zurückgegeben.

info/info all

Gibt alle Informationen des Redis-Dienstes zurück

bedeutet

🏜

redis_build_ id

Build-IDDas Host-Betriebssystem des Redis-Servers Hz器 Serverfrequenzeinstellung LRU_CLOCKVerbundene Clients Anzahl der Clients (ohne über Slave verbundene Clients). Server) client_longest_output_listDie längste Ausgabeliste unter den aktuell verbundenen Clientsclient_biggest_input_bufDer größte Eingabecache unter den aktuell verbundenen Clientsblocked_clientsAnzahl Anzahl der Clients, die auf blockierte Befehle warten (BLPOP, BRPOP , BRPOPLPUSH)Im Folgenden finden Sie alle speicherbezogenen Informationen.

Eingehende Analyse des Info-Befehls in RedisDie Gesamtmenge des vom Redis-Allokator zugewiesenen Speichers , In Bytes (Byte)

used_memory_human

Gibt die Gesamtmenge des von Redis zugewiesenen Speichers in einem für Menschen lesbaren Format zurück

redis_modeServermodus ( Standalone, Sentinel oder Cluster) os
arch_bits Architektur (32 oder 64 Bit)
multiplexing_api Der von Redis
atomicvar_api Atomicvar-API, die von Redis verwendet wird
gcc_version Die beim Kompilieren von Redis verwendete GCC-Version
process_id PID des Servers
run_id Zufällige Kennung des Redis-Servers Ganzes und Cluster)
tcp_port tcp/IP -Höranschluss Anzahl der gestarteten Tage des Redis-Servers
Ausführbare Datei Server kann Dateipfad ausführen
Im Folgenden finden Sie alle kundenbezogenen Informationen
used_memory_rssSpitzenspeicherverbrauch von Redis in Bytes used_memory_peak_humanGibt den Spitzenspeicherverbrauch von Redis im für Menschen lesbaren Format zurückused_memory_peak_perc Genutzter Speicher macht den Spitzenspeicher-Prozentsatz von aus used_memory_overheadDie Summe (in Bytes) des gesamten Overheads, der vom Server zur Verwaltung seiner internen Datenstrukturen zugewiesen wird used_memory_startupDie anfängliche Speichergröße (in Bytes), die Redis beim Start verbraucht, in Einheiten) used_memory_datasetDataset-Größe in Bytes (used_memory minus used_memory_overhead) used_memory_dataset_percused_memory_dataset als Prozentsatz der Nettospeichernutzung (used_memory minus used_memory_startup) total_system_memoryDie Gesamtspeichermenge, über die der Redis-Host verfügttotal_system_memory_humanGibt die Gesamtspeichermenge des Redis-Hosts in einem für Menschen lesbaren Format zurück.used_memory_luaDie von der Lua-Engine verwendete Speichergröße in Bytes a_humanGibt die Erinnerung zurück Von der Lua-Engine verwendete Größe in einem für Menschen lesbaren Format. maxmemory Der Wert der Konfigurationsanweisung maxmemory-policyDas Verhältnis zwischen used_memory_rss und used_memoryZur Kompilierungszeit angegeben Speicher, der vom Redis-Distributor verwendet wird. Kann libc, jemalloc oder tcmalloc sein.Flag, das angibt, ob die aktive Defragmentierung aktiv ist )
Aus Sicht des Betriebssystems wird die Gesamtmenge des von Redis zugewiesenen Speichers zurückgegeben Redis (allgemein bekannt als residente Satzgröße). Dieser Wert stimmt mit der Ausgabe von Befehlen wie top und ps überein. used_memory_peak
maxmemory_policy
mem_fragmentation_ratio
mem_allocator
active_defrag_running

Idealerweise sollte der Wert von used_memory_rss nur geringfügig höher sein als used_memory. Wenn RSS > verwendet wird und der Unterschied zwischen den beiden Werten groß ist, deutet dies auf das Vorhandensein einer (internen oder externen) Speicherfragmentierung hin. Das Verhältnis der Speicherfragmentierung kann anhand des Werts von mem_fragmentation_ratio gesehen werden. Bei Verwendung von > rss bedeutet dies, dass ein Teil des Speichers von Redis vom Betriebssystem in den Auslagerungsbereich ausgelagert wurde. In diesem Fall kann der Vorgang zu erheblichen Verzögerungen führen. Da Redis keine Kontrolle darüber hat, wie der zugewiesene Speicher den Speicherseiten zugeordnet wird, ist ein hoher residenter Speicher (used_memory_rss) normalerweise das Ergebnis einer Spitze in der Speichernutzung. Wenn Redis Speicher freigibt, wird der Speicher an den Allokator zurückgegeben, der den Speicher möglicherweise an das Betriebssystem zurückgibt oder nicht. Wenn Redis Speicher freigibt, ihn aber nicht an das Betriebssystem zurückgibt, stimmt der Wert von used_memory möglicherweise nicht mit der vom Betriebssystem angezeigten Speichernutzung von Redis überein. Durch Überprüfen des Werts von used_memory_peak kann überprüft werden, ob dies geschieht.

Eingehende Analyse des Info-Befehls in Redis

Info-Persistenz

Das Folgende sind alle Persistenz-bezogenen Informationen:

Letztes Mal erfolgreich gespeicherte RDB-Epoche- Basierend auf dem Zeitstempel. rdb_last_bgsave_status. Der Status des letzten RDB-Speichervorgangs _secrdb_last_cow_size aof_enabled . aof_re write_in_progressaof_rewrite_scheduledaof_current_rewrite_time_sec aof_last_bgrewrite_status. aof_last _write_statusaof_last_cow_sizechanges_since_last_save bezieht sich auf die Zeit seit dem letzten Aufruf von SAVE Oder auf die Anzahl der durchgeführten Vorgänge hat seit BGSAVE zu einer Änderung im Datensatz geführt. AOFaof_current_sizeAktuelle AOF-Dateigröße aof_base_sizeAOF-Dateigröße beim letzten Start oder Neuschreiben
Parametername Bedeutung
Laden Zeigt die Dump-Datei (Dump) an. Flag zeigt an ob der Ladevorgang läuft _time
fortlaufend Die Dauer des RDB-Speichervorgangs , falls vorhanden
Die Größe in Bytes, die beim letzten RDB-Speichervorgang zugewiesen wurde
Flag, das angibt, dass die AOF-Protokollierung aktiviert wurde
A Flag, das angibt, dass ein AOF-Umschreibungsvorgang ausgeführt wird
Ein Flag, das angibt, dass ein AOF-Umschreibungsvorgang geplant wird, sobald der laufende RDB-Speichervorgang abgeschlossen ist Umschreibvorgang in Sekunden
Die Dauer des laufenden AOF-Umschreibvorgangs (falls vorhanden)
Der Status des letzten AOF-Umschreibvorgangs
Der Status des letzten AOF-Schreibvorgang
Die Größe der durch Copy-on-Write während des letzten AOF-Rewrite-Vorgangs zugewiesenen Bytes
Wenn AOF aktiviert ist, werden diese zusätzlichen Felder hinzugefügt:
Parametername
Bedeutung

aof_pending_rewrite

Flag, das angibt, ob der AOF-Umschreibungsvorgang unmittelbar nach Abschluss des aktuellen RDB-Speichervorgangs ausgeführt wird. Eingehende Analyse des Info-Befehls in Redis

aof_buffer_length

AOF-Puffergröße

aof_rewrite_buffer_lengthaof_delayed_fsyncWenn ein Ladevorgang läuft, werden diese zusätzlichen Felder hinzugefügt: ParameternameBedeutungLaden Startzeit des Vorgangs (epochaler Zeitstempel) GesamtdateigrößeAnzahl der geladenen Bytes
AOF-Rewrite-Puffergröße aof_pending_bio_fsync Warten auf FS in der Hintergrund-IO-Warteschlange Von ync verarbeitete Aufgaben
delay fsync Zähler
Laden
. loading_start_time
loading_total_bytes
loading_loaded_bytes

loading_loaded_perc

Prozent. geladen

loading_eta_seconds
Geschätzte Anzahl an Sekunden verbleibend, bis der Ladevorgang abgeschlossen ist

Status

Die folgenden Informationen beziehen sich auf alle Statistiken:

Parametername Bedeutung
total_connections_received Gesamtzahl der vom Server akzeptierten Verbindungen
total_commands_processed Server Gesamtzahl der verarbeiteten Befehle
instantaneous_ops_per_sec Anzahl der pro Sekunde verarbeiteten Befehle
rejected_connections Anzahl der aufgrund der Maxclients-Grenze abgelehnten Verbindungen
expired_keys Schlüsselablaufereignisse Gesamtzahl der
evicted_keys Anzahl der aufgrund der maximalen Speicherbeschränkung geräumten Schlüssel
keyspace_hits Anzahl erfolgreicher Schlüsselsuchen im Hauptwörterbuch
keyspace_misses Anzahl fehlgeschlagener Schlüsselsuchen ups im Hauptwörterbuch
pubsub_channels Hat die globale Anzahl von Pub/Sub-Kanälen, die der Client abonniert hat
pubsub_patterns Hat die globale Anzahl von Pub/Sub-Mustern, die der Client abonniert hat
latest_fork_usec The Dauer des letzten Fork-Vorgangs in Mikrosekunden. Einheit

Inforeplikation

Das Folgende sind alle replikationsbezogenen Informationen:

Parametername Bedeutung
Rolle Wenn die Instanz kein Slave eines Knotens ist, ist der Wert „Master“, wenn die Instanz Daten von einem Knoten synchronisiert, ist sie „Slave“. Beachten Sie, dass ein Slave der Master eines anderen Slaves sein kann (Daisy Chain)

Wenn die Instanz ein Slave ist, werden diese zusätzlichen Felder bereitgestellt:

Parametername Bedeutung
master_host Hostname oder IP-Adresse des Masterknotens
master_port TCP-Port, der vom Masterknoten überwacht wird
master_link_status Verbindungsstatus (aktiv oder deaktiviert)
master_last_io_seconds_ago Die Anzahl der Sekunden
master_sync_in_progress zeigt an, dass der Master mit dem Slave synchronisiert wird

Wenn ein SYNC-Vorgang ausgeführt wird, werden diese Felder bereitgestellt:

Parametername Bedeutung
master_sync_left_bytes Anzahl der verbleibenden Bytes, bevor die Synchronisierung abgeschlossen ist
master_sync_last_io_seconds_ ago Die Anzahl der Sekunden seit der letzten IO-Übertragung während eines SYNC-Vorgangs

Wenn die Verbindung zwischen dem Master- und Slave-Knoten getrennt sind, wird ein zusätzliches Feld bereitgestellt:

Parametername Bedeutung
master_link_down_since_seconds Selbstverbindung Anzahl der Sekunden. e seit der Trennung abgelaufen

Die folgenden Felder werden immer bereitgestellt:

Parametername Bedeutung
verbundene_Slaves Angeschlossene Anzahl von Slave-Knoten

Für jeden Slave-Knoten die folgenden Zeilen wird hinzugefügt: SlaveXXX-ID, Adresse, Portnummer, Status

Eingehende Analyse des Info-Befehls in Redisused_cpu_sys

Vom Redis-Server verbrauchte System-CPU

used_cpu_user

Vom Redis-Server verbrauchte Benutzer-CPUVon Hintergrundprozessen verbrauchte System-CPUused_cpu_user_childrenBenutzer-CPU wird durch Hintergrundprozesse beansprucht Cluster-Abschnitt enthält derzeit nur ein eindeutiges Feld: ParameternameBedeutung.
used_cpu_sys_children
Info-Cluster

Eingehende Analyse des Info-Befehls in RedisCluster _enabled

bedeutet aktivierter Redis-Cluster

Der Abschnitt keyspace stellt Statistiken über das Hauptwörterbuch jeder Datenbank bereit. Die Statistiken sind die Gesamtzahl der Schlüssel und die Gesamtzahl der abgelaufenen Schlüssel. Geben Sie für jede Datenbank die folgenden Zeilen an: ParameternameBedeutung
info keyspace

Eingehende Analyse des Info-Befehls in Rediskeyspace

dbXXX keys=XXX,expires=XXX

Eingehende Analyse des Info-Befehls in Redis

Dieser Artikel ist reproduziert von: https://juejin.cn/post/7014398047916883998

Weitere Kenntnisse zum Thema Programmierung finden Sie unter: Programmiervideo! !

Das obige ist der detaillierte Inhalt vonEingehende Analyse des Info-Befehls in Redis. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:juejin.cn. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen