1. Description
redis, en tant que base de données de cache, joue un grand rôle dans tous les aspects. Python prend en charge le fonctionnement de Redis, il existe une bibliothèque Redis spécialement conçue pour Django, à savoir Django-redis
2.
pip install django-redis
3. Configuration
3.1 Configurer redis
Ouvrez le fichier de configuration de Django, tel que settings.py, et définissez l'élément CACHES dedans
CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://127.0.0.1:6379/1", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.DefaultClient", } } }
Plusieurs informations de connexion Redis peuvent être configurées dans un CACHES, chacun avec son propre alias (alias), le "par défaut" ci-dessus est l'alias. Vous pouvez vous connecter à différentes bases de données Redis via différents alias
LOCATION est les informations de connexion, y compris le mot de passe de l'utilisateur du port IP, etc. Si un mot de passe utilisateur n'est pas requis, vous pouvez l'omettre. Django- Redis prend en charge trois protocoles de connexion, comme suit
protocole | description | exemple |
---|---|---|
redis:// | connexion par socket TCP ordinaire | redis://[ [nom d'utilisateur] : [mot de passe]]@localhost:6379/0 |
rediss | Connexion socket SSL TCP | rediss://[[nom d'utilisateur]:[mot de passe]]@localhost:6379/0 |
rediss:// | Connexion au socket de domaine Unix | unix://[[username]:[password]]@/path/to/socket.sock?db=0 |
3.2 Utiliser Redis pour stocker les sessions
La session par défaut de Django est stockée dans la base de données SQL, mais nous savons tous que les données ordinaires seront stockées sur le disque dur, ce qui n'est pas si rapide. Si vous souhaitez les modifier pour qu'elles soient stockées dans Redis, il vous suffit de les configurer. dans le fichier de configuration Un simple clic
SESSION_ENGINE = "django.contrib.sessions.backends.cache" SESSION_CACHE_ALIAS = "default"
3.3 Paramètre du délai d'expiration de la connexion Redis
Le nombre de secondes pour le délai d'expiration de la connexion peut être spécifié dans l'élément de configuration SOCKET_CONNECT_TIMEOUT représente le délai d'expiration de la connexion à Redis, et SOCKET_TIMEOUT représente le délai d'expiration de la lecture et de l'écriture. opérations utilisant redis
CACHES = { "default": { # ... "OPTIONS": { "SOCKET_CONNECT_TIMEOUT": 5, # 连接redis超时时间,单位为秒 "SOCKET_TIMEOUT": 5, # redis读写操作超时时间,单位为秒 } } }
4. Utiliser redis
4.1 Utiliser le redis par défaut
Si vous souhaitez utiliser le redis par défaut, c'est-à-dire le redis avec l'alias "default" défini dans le fichier de configuration, vous pouvez vous référer au cache dans django.core.cache
from django.core.cache import cache cache.set("name", "冰冷的希望", timeout=None) print(cache.get("name"))
4.2 Utiliser le redis spécifié (Redis natif)
Lorsque vous écrivez plusieurs connexions Redis dans le fichier de configuration, vous pouvez spécifier quel Redis utiliser via des alias
from django_redis import get_redis_connection redis_conn = get_redis_connection("chain_info") redis_conn.set("name", "icy_hope") print(redis_conn.get("name"))
Veuillez noter que le client a obtenu via get_redis_connection() est le client Redis natif, bien qu'il soit fondamentalement Il prend en charge toutes les commandes Redis natives, mais les données qu'il renvoie sont de type octet, vous devez les décoder vous-même
5 Pool de connexions
L'avantage d'utiliser un. Le pool de connexions est que vous n'avez pas à gérer les objets de connexion, il créera automatiquement des objets de connexion et tentera une utilisation répétée, donc les performances seront relativement meilleures
5.1 Configurez le pool de connexions
Pour utiliser le pool de connexions, d'abord écrivez le nombre maximum de connexions dans le pool de connexions dans le fichier de configuration de Django
CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", ... "OPTIONS": { "CONNECTION_POOL_KWARGS": {"max_connections": 100} } } }
5.2 Utiliser le pool de connexions
us Vous pouvez déterminer quel redis utiliser via l'alias de connexion, puis exécuter la commande normalement. sur les instances de connexion qu'il crée, mais vous pouvez vérifier combien d'instances de connexion sont actuellement créées via l'attribut _created_connections de connection_pool
from django_redis import get_redis_connection redis_conn = get_redis_connection("default") redis_conn.set("name", "冰冷的希望") print(redis_conn.get("name")) # 查看目前已创建的连接数量 connection_pool = redis_conn.connection_pool print(connection_pool._created_connections)
5.3 Pool de connexions personnalisées
La classe de connexion par défaut de Django-redis est DefaultClient Si vous avez des exigences de personnalisation plus élevées. , vous pouvez créer votre propre classe et hériter de ConnectionPool
from redis.connection import ConnectionPool class MyPool(ConnectionPool): pass
Après avoir cette classe, vous devez toujours la spécifier dans le fichier de configuration de Django
"OPTIONS": { "CONNECTION_POOL_CLASS": "XXX.XXX.MyPool", }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Redis améliore les performances et l'évolutivité des applications en mettant en cache des données, implémentant le verrouillage distribué et la persistance des données. 1) Données de cache: utilisez Redis pour mettre en cache les données fréquemment accessibles pour améliorer la vitesse d'accès aux données. 2) Verrouillage distribué: utilisez Redis pour implémenter les verrous distribués pour assurer la sécurité du fonctionnement dans un environnement distribué. 3) Persistance des données: assurer la sécurité des données via les mécanismes RDB et AOF pour éviter la perte de données.

Le modèle et la structure de données de Redis incluent cinq types principaux: 1. String: Utilisé pour stocker des données de texte ou binaires et prend en charge les opérations atomiques. 2. Liste: collection d'éléments commandés, adapté aux files d'attente et aux piles. 3. Ensemble: Éléments uniques non ordonnés Ensemble, soutenant le fonctionnement de l'ensemble. 4. Ensemble ordonné (triset): un ensemble unique d'éléments avec des scores, adaptés aux classements. 5. Table du hachage (hachage): une collection de paires de valeurs clés, adaptées au stockage d'objets.

Les méthodes de base de données de Redis incluent les bases de données en mémoire et le stockage de valeurs de clé. 1) Redis stocke les données en mémoire, lit et écrit rapidement. 2) Il utilise des paires de valeurs clés pour stocker des données, prend en charge des structures de données complexes telles que les listes, les collections, les tables de hachage et les collections ordonnées, adaptées aux caches et aux bases de données NoSQL.

Redis est une puissante solution de base de données car elle offre des performances rapides, de riches structures de données, une haute disponibilité et une évolutivité, des capacités de persistance et un large éventail de support écosystémique. 1) Performances extrêmement rapides: les données de Redis sont stockées en mémoire et ont des vitesses de lecture et d'écriture extrêmement rapides, adaptées aux applications élevées de concurrence et de latence faible. 2) Rich Structure de données: prend en charge plusieurs types de données, tels que des listes, des collections, etc., qui conviennent à une variété de scénarios. 3) Haute disponibilité et évolutivité: prend en charge la réplication maître-esclave et le mode de cluster pour atteindre la haute disponibilité et l'évolutivité horizontale. 4) Persistance et sécurité des données: la persistance des données est obtenue via RDB et AOF pour garantir l'intégrité et la fiabilité des données. 5) Support d'écosystème et communautaire large: avec un énorme écosystème et une communauté active,

Les caractéristiques clés de Redis incluent la vitesse, la flexibilité et le support de structure de données riche. 1) Speed: Redis est une base de données en mémoire, et les opérations de lecture et d'écriture sont presque instantanées, adaptées à la gestion du cache et de la session. 2) Flexibilité: prend en charge plusieurs structures de données, telles que des chaînes, des listes, des collections, etc., qui conviennent au traitement des données complexes. 3) Prise en charge de la structure des données: fournit des chaînes, des listes, des collections, des tables de hachage, etc., qui conviennent aux différents besoins commerciaux.

La fonction centrale de Redis est un système de stockage et de traitement de données en mémoire haute performance. 1) Accès aux données à grande vitesse: Redis stocke les données en mémoire et fournit une vitesse de lecture et d'écriture au niveau microseconde. 2) Rich Structure de données: prend en charge les chaînes, les listes, les collections, etc., et s'adapte à une variété de scénarios d'application. 3) Persistance: Persister les données sur le disque via RDB et AOF. 4) Publier l'abonnement: peut être utilisé dans les files d'attente de messages ou les systèmes de communication en temps réel.

Redis prend en charge une variété de structures de données, notamment: 1. String, adapté au stockage des données à valeur unique; 2. Liste, adaptée aux files d'attente et aux piles; 3. SET, utilisé pour stocker des données non dégonflées; 4. Ensemble ordonné, adapté aux listes de classement et aux files d'attente de priorité; 5. Table du hachage, adapté au stockage des données d'objet ou structurées.

Redis Counter est un mécanisme qui utilise le stockage de la paire de valeurs de clés Redis pour implémenter les opérations de comptage, y compris les étapes suivantes: création de clés de comptoir, augmentation du nombre, diminution du nombre, réinitialisation du nombre et objet de comptes. Les avantages des compteurs Redis comprennent une vitesse rapide, une concurrence élevée, une durabilité et une simplicité et une facilité d'utilisation. Il peut être utilisé dans des scénarios tels que le comptage d'accès aux utilisateurs, le suivi des métriques en temps réel, les scores de jeu et les classements et le comptage de traitement des commandes.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Version Mac de WebStorm
Outils de développement JavaScript utiles

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

Version crackée d'EditPlus en chinois
Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

VSCode Windows 64 bits Télécharger
Un éditeur IDE gratuit et puissant lancé par Microsoft