Heim  >  Artikel  >  Datenbank  >  Redis: ein magisches Tool zur Verkürzung der Datenabfragezeit

Redis: ein magisches Tool zur Verkürzung der Datenabfragezeit

王林
王林Original
2023-11-07 14:36:521133Durchsuche

Redis: ein magisches Tool zur Verkürzung der Datenabfragezeit

Redis: Ein magisches Tool zur Verkürzung der Datenabfragezeit. Es sind spezifische Codebeispiele erforderlich.

Redis ist eine leistungsstarke In-Memory-Datenbank, die die Geschwindigkeit der Datenabfrage erheblich verbessern kann. Redis verfügt über eine Vielzahl von Datentypen, darunter Zeichenfolgen, Hashes, Listen, Mengen, geordnete Mengen usw., und kann in verschiedenen Anwendungsszenarien wie Zählern, Caches, Nachrichtenwarteschlangen usw. verwendet werden.

In diesem Artikel wird die Verwendung von Redis vorgestellt und Codebeispiele bereitgestellt, um den Lesern zu helfen, Redis besser zu verstehen und zu verwenden.

1. Installieren Sie Redis

Bevor Sie Redis verwenden, müssen Sie zuerst Redis installieren. Sie können das Installationspaket von der offiziellen Redis-Website (https://redis.io/) herunterladen oder den Paketmanager verwenden, um es zu installieren.

Nehmen Sie Ubuntu als Beispiel und verwenden Sie den folgenden Befehl zur Installation:

$ sudo apt-get update
$ sudo apt-get install redis-server

Nach Abschluss der Installation können Sie den folgenden Befehl verwenden, um den Redis-Dienst zu starten:

$ redis-server

2. Allgemeine Redis-Befehle

Redis-Befehle werden gesendet an den Redis-Server über den Client ausgeführt. Für die Interaktion können Sie das mit Redis gelieferte Befehlszeilentool redis-cli verwenden.

Die folgenden Befehle sind für Redis üblich:

  1. SET-Schlüsselwert: Setzt den Wert des angegebenen Schlüssels auf value
  2. GET-Schlüssel: Ruft den Wert des angegebenen Schlüssels ab
  3. DEL-Schlüssel: Löscht den angegebenen Schlüssel
  4. INCR Schlüssel: Für den angegebenen Schlüssel wird der Wert um 1 erhöht. DECR-Schlüssel: Der Wert des angegebenen Schlüssels wird um 1 verringert. HSET-Schlüsselfeldwert: Setzt den Wert des angegebenen Felds in der Hash-Tabelle des angegebenen Schlüssels auf value
  5. HGET-Schlüsselfeld: Ruft den angegebenen Wert des angegebenen Felds in der Hash-Tabelle des Schlüssels ab
  6. LPUSH-Schlüsselwert: Fügt den Wert in den Kopf der Liste mit dem angegebenen Schlüssel ein
  7. RPUSH-Schlüsselwert: Fügt den Wert ein das Ende der Liste mit dem angegebenen Schlüssel
  8. LPOP-Schlüssel: Entfernen Sie den angegebenen Schlüssel. Das Kopfelement der Liste
  9. RPOP-Schlüssel: Entfernen Sie das Endelement der Liste mit dem angegebenen Schlüssel
  10. SADD-Schlüsselmitglied: Fügen Sie ein Mitgliedselement hinzu zum Satz des angegebenen Schlüssels
  11. SMEMBERS-Schlüssel: Alle Elemente im Satz des angegebenen Schlüssels abrufen
  12. ZADD-Schlüssel-Score-Mitglied: Punkte- und Mitgliedselemente zum geordneten Satz des angegebenen Schlüssels hinzufügen
  13. ZRANGE-Schlüssel Start Stopp: Abrufen Die Elemente zwischen Start und Stopp im geordneten Satz des angegebenen Schlüssels, sortiert nach Punktzahl von klein nach groß Datenzugriff. Das Folgende ist ein Beispielcode, der Redis als Cache verwendet:
  14. import redis
    
    REDIS_HOST = 'localhost'
    REDIS_PORT = 6379
    
    def get_data(key):
        r = redis.StrictRedis(host=REDIS_HOST, port=REDIS_PORT, db=0)
        data = r.get(key)
        if data:
            return data.decode()
        else:
            data = fetch_data_from_database()
            r.set(key, data)
            return data
    
    def fetch_data_from_database():
        # 到数据库中获取数据
        pass
  15. Wenn die Methode get_data aufgerufen wird, fragen Sie zunächst über Redis ab, ob zwischengespeicherte Daten vorhanden sind. Wenn zwischengespeicherte Daten vorhanden sind, werden diese direkt zurückgegeben. Andernfalls holen Sie sich die Daten aus der Datenbank, speichern Sie sie in Redis und geben Sie die Daten dann zurück.
  16. Queue

Redis kann als Nachrichtenwarteschlange verwendet werden, um eine asynchrone Aufgabenverarbeitung zu erreichen. Das Folgende ist ein Beispielcode, der Redis als Warteschlange verwendet:
    import redis
    
    REDIS_HOST = 'localhost'
    REDIS_PORT = 6379
    
    def process_data(data):
        # 处理数据
        pass
    
    def worker():
        r = redis.StrictRedis(host=REDIS_HOST, port=REDIS_PORT, db=0)
        while True:
            data = r.lpop('task_queue')
            if data:
                process_data(data.decode())
            else:
                time.sleep(1)
    
    def add_task(data):
        r = redis.StrictRedis(host=REDIS_HOST, port=REDIS_PORT, db=0)
        r.rpush('task_queue', data)
    
  1. Wenn die Methode add_task aufgerufen wird, werden die zu verarbeitenden Daten zur Warteschlange task_queue hinzugefügt. Die Worker-Methode wartet auf Daten in der Warteschlange. Wenn Daten verfügbar sind, rufen Sie die Methode „process_data“ auf, um die Daten zu verarbeiten.
4. Fazit

Redis ist eine leistungsstarke In-Memory-Datenbank, die die Geschwindigkeit der Datenabfrage in Szenarien mit hoher Parallelität erheblich verbessern kann. Dieser Artikel stellt die allgemeinen Befehle und Anwendungsbeispiele von Redis vor und hofft, den Lesern hilfreich zu sein.

Das obige ist der detaillierte Inhalt vonRedis: ein magisches Tool zur Verkürzung der Datenabfragezeit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn