Wo kann Redis eingesetzt werden? 16 gemeinsame Nutzungsszenarien geteilt
Wo kann Redis angewendet werden? In diesem Artikel werden Ihnen 16 gängige Verwendungsszenarien von Redis auf einmal vorgestellt. Ich hoffe, er ist für alle hilfreich!
【Verwandte Empfehlung: Redis-Video-Tutorial】
1. Cache
String-Typ
Zum Beispiel: Hot-Data-Cache (wie Berichte, Promi-Betrug), Objekt-Cache, Ganzseiten-Cache, was kann Verbessern Sie die Hot-Data-Zugriffsdaten.
2. Verteilte Datenfreigabe
String-Typ, da Redis ein verteilter unabhängiger Dienst ist, der von mehreren Anwendungen gemeinsam genutzt werden kann
Zum Beispiel: verteilte Sitzung
<dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-redis</artifactId> </dependency>
3 Verteilte Sperre
Setnx-Methode vom Typ String Wird nur dann erfolgreich hinzugefügt, wenn es nicht vorhanden ist. Es wird true zurückgegeben Abschnitt auf einmal
5. Zähler
int-Typ, Inkr-Methode
Zum Beispiel: die Anzahl der gelesenen Artikel, die Anzahl der Weibo-Likes, eine gewisse Verzögerung einplanen, zuerst in Redis schreiben und dann regelmäßig mit der Datenbank synchronisieren
6. Aktuelles Limit
int-Typ, Incr-Methode
verwendet die IP-Adresse des Besuchers und andere Informationen. Bei jedem Besuch wird die Anzahl erhöht.
String Typ Bitcount (Einführung in die Bitmap-Datenstruktur in 1.6.6)
Zeichen werden in 8-Bit-Binärform gespeichert
public static boolean getLock(String key) { Long flag = jedis.setnx(key, "1"); if (flag == 1) { jedis.expire(key, 10); } return flag == 1; } public static void releaseLock(String key) { jedis.del(key); }
Zum Beispiel: Online-Benutzerstatistiken, gespeicherte Benutzerstatistiken
set k1 a setbit k1 6 1 setbit k1 7 0 get k1 /* 6 7 代表的a的二进制位的修改 a 对应的ASCII码是97,转换为二进制数据是01100001 b 对应的ASCII码是98,转换为二进制数据是01100010 因为bit非常节省空间(1 MB=8388608 bit),可以用来做大数据量的统计。 */
Unterstützt bitweise UND-, bitweise ODER- usw. Operationen
setbit onlineusers 01 setbit onlineusers 11 setbit onlineusers 20
Benutzer berechnen, die 7 Tage online sind
BITOPANDdestkeykey[key...] ,对一个或多个 key 求逻辑并,并将结果保存到 destkey 。 BITOPORdestkeykey[key...] ,对一个或多个 key 求逻辑或,并将结果保存到 destkey 。 BITOPXORdestkeykey[key...] ,对一个或多个 key 求逻辑异或,并将结果保存到 destkey 。 BITOPNOTdestkeykey ,对给定 key 求逻辑非,并将结果保存到 destkey 。
8. Warenkorb
String oder Hash. Alle Hashes, die mit String durchgeführt werden können, können durchgeführt werden
Schlüssel: Benutzer-ID; Feld: Produkt-ID Wert: Produktmenge.
+1:hinkr. -1:hdecr. Löschen: hdel. Alles auswählen: hgetall. Anzahl der Artikel: hlen.
9. Zeitleiste für BenutzernachrichtenListe, eine doppelt verknüpfte Liste, kann direkt als Zeitleiste verwendet werden. Einfügereihenfolge
- 10. NachrichtenwarteschlangeList bietet zwei blockierende Pop-Operationen: blpop/brpop, das Timeout kann eingestellt werden
Der obige Vorgang. Tatsächlich handelt es sich um die Blockierungswarteschlange von Java. Je mehr Dinge Sie lernen. Je niedriger die Lernkosten
Warteschlange: zuerst rein, zuerst geteilt: rpush blpop, linker Kopf und rechter Schwanz, rechts kommt in die Warteschlange, links geht aus der Warteschlange heraus- Stapel: zuerst rein, zuletzt raus: rpush brpop
- 11, Lotterieziehung
kommt mit einem zufälligen Get-Wert
BITOP "AND" "7_days_both_online_users" "day_1_online_users" "day_2_online_users" ... "day_7_online_users"
- 12, like, anmelden, einchecken
Likes: Narbe wie:t1001
Ist es nicht viel einfacher als die Datenbank?
- Die alte Regel besteht darin, Tags:i5001 zu verwenden, um alle Tags des Produkts zu verwalten.
- Tags hinzufügen:i5001 Das Bild ist klar und zart
- Tags hinzufügen:i5001 Echte Farbe und klare Anzeige
- Tags hinzufügen:i5001 Der Vorgang ist hervorragend 14. Produktauswahl
spop myset
// 获取差集 sdiff set1 set2 // 获取交集(intersection ) sinter set1 set2 // 获取并集 sunion set1 set2

sadd brand:apple iPhone11 sadd brand:ios iPhone11 sad screensize:6.0-6.24 iPhone11 sad screentype:lcd iPhone 11
15 Folge einander:
- füge 1 hinzu:folge 2
- füge 2 hinzu:Fans 1
- Füge 1 hinzu:Fans 2
Die Leute, denen ich folge, folgen ihm auch (Kreuzung nehmen):
sinter 1:folge 2:fans
Leute, die du vielleicht kennst:- 用户1可能认识的人(差集):sdiff 2:follow 1:follow
- 用户2可能认识的人:sdiff 1:follow 2:follow
16、排行榜
id 为6001 的新闻点击数加1:
zincrby hotNews:20190926 1 n6001
获取今天点击最多的15条:
zrevrange hotNews:20190926 0 15 withscores
Redis 用的好,加薪少不了
原文地址:https://juejin.cn/post/6994229128534687781
作者:码猿技术专栏
更多编程相关知识,请访问:编程视频!!
Das obige ist der detaillierte Inhalt vonWo kann Redis eingesetzt werden? 16 gemeinsame Nutzungsszenarien geteilt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

1. Starten Sie das Menü [Start], geben Sie [cmd] ein, klicken Sie mit der rechten Maustaste auf [Eingabeaufforderung] und wählen Sie Als [Administrator] ausführen. 2. Geben Sie nacheinander die folgenden Befehle ein (kopieren und fügen Sie sie sorgfältig ein): SCconfigwuauservstart=auto, drücken Sie die Eingabetaste. SCconfigbitsstart=auto, drücken Sie die Eingabetaste. SCconfigcryptsvcstart=auto, drücken Sie die Eingabetaste. SCconfigtrustedinstallerstart=auto, drücken Sie die Eingabetaste. SCconfigwuauservtype=share, drücken Sie die Eingabetaste. netstopwuauserv, drücken Sie die Eingabetaste für netstopcryptS

Engpässe bei PHP-Funktionen führen zu geringer Leistung, was durch die folgenden Schritte behoben werden kann: Suchen Sie die Engpassfunktion und verwenden Sie Tools zur Leistungsanalyse. Ergebnisse zwischenspeichern, um Neuberechnungen zu reduzieren. Verarbeiten Sie Aufgaben parallel, um die Ausführungseffizienz zu verbessern. Optimieren Sie die Zeichenfolgenverkettung und verwenden Sie stattdessen integrierte Funktionen. Verwenden Sie integrierte Funktionen anstelle benutzerdefinierter Funktionen.

Die Caching-Strategie in GolangAPI kann die Leistung verbessern und die Serverlast reduzieren. Häufig verwendete Strategien sind: LRU, LFU, FIFO und TTL. Zu den Optimierungstechniken gehören die Auswahl geeigneter Cache-Speicher, hierarchisches Caching, Invalidierungsmanagement sowie Überwachung und Optimierung. Im praktischen Fall wird der LRU-Cache verwendet, um die API zum Abrufen von Benutzerinformationen aus der Datenbank zu optimieren. Andernfalls kann der Cache nach dem Abrufen aus der Datenbank aktualisiert werden.

In der PHP-Entwicklung verbessert der Caching-Mechanismus die Leistung, indem er häufig aufgerufene Daten vorübergehend im Speicher oder auf der Festplatte speichert und so die Anzahl der Datenbankzugriffe reduziert. Zu den Cache-Typen gehören hauptsächlich Speicher-, Datei- und Datenbank-Cache. In PHP können Sie integrierte Funktionen oder Bibliotheken von Drittanbietern verwenden, um Caching zu implementieren, wie zum Beispiel Cache_get() und Memcache. Zu den gängigen praktischen Anwendungen gehören das Zwischenspeichern von Datenbankabfrageergebnissen zur Optimierung der Abfrageleistung und das Zwischenspeichern von Seitenausgaben zur Beschleunigung des Renderings. Der Caching-Mechanismus verbessert effektiv die Reaktionsgeschwindigkeit der Website, verbessert das Benutzererlebnis und reduziert die Serverlast.

Durch die Verwendung des Redis-Cache kann die Leistung des PHP-Array-Pagings erheblich optimiert werden. Dies kann durch die folgenden Schritte erreicht werden: Installieren Sie den Redis-Client. Stellen Sie eine Verbindung zum Redis-Server her. Erstellen Sie Cache-Daten und speichern Sie jede Datenseite in einem Redis-Hash mit dem Schlüssel „page:{page_number}“. Rufen Sie Daten aus dem Cache ab und vermeiden Sie teure Vorgänge auf großen Arrays.

Zuerst müssen Sie die Systemsprache auf die Anzeige in vereinfachtem Chinesisch einstellen und neu starten. Wenn Sie die Anzeigesprache zuvor auf vereinfachtes Chinesisch geändert haben, können Sie diesen Schritt natürlich einfach überspringen. Beginnen Sie als Nächstes mit dem Betrieb der Registrierung regedit.exe, navigieren Sie direkt zu HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlNlsLanguage in der linken Navigationsleiste oder der oberen Adressleiste und ändern Sie dann den InstallLanguage-Schlüsselwert und den Standardschlüsselwert auf 0804 (wenn Sie ihn in Englisch ändern möchten). us, Sie müssen zunächst die Anzeigesprache des Systems auf en-us einstellen, das System neu starten und dann alles auf 0409 ändern) Sie müssen das System an dieser Stelle neu starten.

Ja, Navicat kann eine Verbindung zu Redis herstellen, wodurch Benutzer Schlüssel verwalten, Werte anzeigen, Befehle ausführen, Aktivitäten überwachen und Probleme diagnostizieren können. Um eine Verbindung zu Redis herzustellen, wählen Sie in Navicat den Verbindungstyp „Redis“ und geben Sie die Serverdetails ein.

1. Doppelklicken Sie zunächst auf dem Desktop auf das Symbol [Dieser PC], um es zu öffnen. 2. Doppelklicken Sie dann mit der linken Maustaste, um [Laufwerk C] einzugeben. Systemdateien werden im Allgemeinen automatisch auf Laufwerk C gespeichert. 3. Suchen Sie dann den Ordner [Windows] auf dem Laufwerk C und doppelklicken Sie, um ihn aufzurufen. 4. Nachdem Sie den Ordner [Windows] aufgerufen haben, suchen Sie den Ordner [SoftwareDistribution]. 5. Suchen Sie nach der Eingabe den Ordner [Download], der alle Win11-Download- und Update-Dateien enthält. 6. Wenn wir diese Dateien löschen möchten, löschen Sie sie einfach direkt in diesem Ordner.
