Maison  >  Article  >  base de données  >  Configuration de la persistance Redis (introduction d'image et de texte)

Configuration de la persistance Redis (introduction d'image et de texte)

烟雨青岚
烟雨青岚avant
2020-06-17 16:40:012875parcourir

Configuration de la persistance Redis (introduction d'image et de texte)

Configuration de la persistance Redis (introduction image et texte)

Brève introduction de Redis

redis est une base de données de valeurs-clés de type open source et hautement disponible c语言 (NoSQL, pas seulement une base de données) écrite par 非关系型数据库.

Différentes des bases de données traditionnelles, les données Redis existent 内存, donc les performances de lecture et d'écriture ne sont généralement pas élevées et peuvent atteindre 100 000 opérations par seconde, elles sont donc largement utilisées dans la mise en cache. Par exemple : partager des sessions avec. Tomcat dans l'architecture du site Web, effectuez la mise en cache de la base de données, etc.

Avantages et inconvénients de redis

Avantages

  1. Vitesse de lecture et d'écriture rapide, la lecture peut atteindre 110 000 fois/s, l'écriture peut atteindre 81 000 fois/ s, Il est écrit en langage C, le code est élégant et il s'agit d'une architecture monothread, il a donc une efficacité d'exécution élevée et une vitesse rapide

  2. Prend en charge une variété de structures de données , chaîne (chaîne, également la plus couramment utilisée), hachage, liste, ensemble, ensemble ordonné (ZSET)

  3. Fonctions riches, telles que : compteur naturel, fonction d'expiration de clé , File d'attente des messages, etc.

  4. prend en charge de nombreux langages clients, prend en charge php, java, python

  5. prend en charge la persistance des données

  6. Livré avec une variété d'architectures à haute disponibilité, telles que : réplication maître-esclave, sentinelle, cluster haute disponibilité

Inconvénients

  1. C'est précisément parce que les données sont stockées dans la mémoire que les exigences en matière de performances du serveur sont strictes. Vous pouvez choisir la quantité de mémoire à acheter en fonction du volume d'activité. Il est difficile de réaliser une expansion en ligne, le premier achat est donc nécessaire. Soyez prudent

  2. La persévérance est mentionnée ci-dessus. Qu'est-ce que la persévérance ?

  3. La persistance prend en charge l'écriture des données en mémoire sur le disque pour éviter que toutes les données en mémoire ne soient perdues en cas de panne du serveur.

Comment obtenir la persistance

Prend en charge 2 formats de données persistantes AOF, RDB et un mélange de ces deux, AOF&RDB

Remarque : lorsque ces deux formats sont activés, redis AOF est préféré pour récupération de données, mais RDB est la méthode de persistance par défaut.

Persistance AOF : Il enregistre chaque commande exécutée par redis dans un fichier journal désigné séparément Lors du redémarrage ou de la récupération des données, les données du fichier journal seront restaurées


RDB : Tout comme prendre un. instantané, définissez le cycle d'instantané en fonction des paramètres de sauvegarde définis dans le fichier de configuration, puis enregistrez-le sur le disque dur. Un fichier dump.rdb sera généré

Comparaison entre AOF et RDB :

Les fichiers 1AOF sont mis à jour plus fréquemment que rdb, la priorité est donnée à l'utilisation de aof pour restaurer

  1. aof est plus sécurisé que rdb

  2. Performances de rdb Meilleures que aof, lorsque la quantité de données est importante, la vitesse de récupération des journaux est plus lente que rdb

  3. Pendant la lecture et l'écriture continues, si rdb prend un instantané , il y aura un retard dans les données et les données récupérées seront incomplètes

  4. Structure des données Redis

  5. .

    Implémentation de la persistance de redis

    Déploiement de redis

    1 Créez un répertoire de données

    mkdir -p /redis/soft
    mkdir -p /opt/redis_cluster/redis_6379/{conf,logs,pid}

    Expliquez pourquoi vous créez vous-même les répertoires conf, logs et pid au lieu de. les laissant L'initialisation est générée automatiquement
    Nous sommes dans l'ordre de démarrer plusieurs processus Redis sur un hôte pour implémenter le cluster Redis ultérieur (au moins 6) (la configuration de l'ordinateur de l'auteur ne me permet pas d'opérer arbitrairement)

    2. Téléchargez le package d'installation redis

    cd /redis/soft
    wget http://download.redis.io/releases/redis-5.0.6.tar.gz

    3. Décompressez redis dans /opt/redis_cluster/

    tar zxf redis-5.0.6.tar.gz -C /opt/redis_cluster/
    ln -s /opt/redis_cluster/redis-5.0.6  /opt/redis_cluster/redis  #做好软连接,方便自己管理

    4. Changez de répertoire pour installer redis

    	cd /opt/redis_cluster/redis
    	make && make install

    5. fichier/opt/redis_cluster/redis_6379/conf/6379.conf
    Ajouter du contenu important

    添加:
    bind 127.0.0.1 192.168.10.1
    port 6379
    daemonize yes  #开启daemon进程pidfile /opt/redis_cluster/redis_6379/pid/redis_6379.pid
    logfile /opt/redis_cluster/redis_6379/logs/redis_6379.log
    databases 16
    dbfilename redis.rdb  #RDB持久化文件dir /opt/redis_cluster/redis_6379 #RDB存放的位置

    6. Démarrez le service Redis actuel
    redis-server /opt/redis_cluster/redis_6379/conf/6379.conf

    [root@redis-master ~]# netstat -anpt |grep 6379tcp        0      0 192.168.10.1:6379       0.0.0.0:*               LISTEN      49206/redis-server  
    tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN      49206/redis-server  
    tcp        0      0 127.0.0.1:41400         127.0.0.1:6379          TIME_WAIT   -                   
    tcp        0      0 192.168.10.1:6379       192.168.10.8:46220      ESTABLISHED 49206/redis-server  
    [root@redis-master ~]#

    Configuration RDB persistante

    Modifier la configuration et ajoutez l'élément de sauvegarde

    vim /opt/redis_cluster/redis_6379/conf/6379.conf	
    添加:
    save 900 1           #在900秒(15分钟)之后,如果至少有1个key发生变化,则dump内存快照。save 300 10          #在300秒(5分钟)之后,如果至少有10个key发生变化,则dump内存快照。save 60 500        #在60秒(1分钟)之后,如果至少有500个key发生变化,则dump内存快照

    Configuration AOF persistante

    Identique à la modification du fichier de configuration
    Ajoutez une annexe et activez la persistance

    vim /opt/redis_cluster/redis_6379/conf/6379.conf
    添加:
    appendonly yes				#启用AOF持久化appendfilename "redis.aof"	#指定AOF文件名appendfsync everysec		#每秒同步一次

    Redémarrez Redis pour qu'il prenne effet et vérifiez la persistance

    redis-cli shutdownredis-server /opt/redis_cluster/redis_6379/conf/6379.conf

    Ajouter des paires clé-valeur dans la base de données redis

    #!/bin/bashfor i in {1..500}do 
    	redis-cli set k_$i v_$idone

    Configuration de la persistance Redis (introduction dimage et de texte)

    Lorsque la base de données est fermée à ce moment, les éléments en mémoire seront être perdu normalement, mais il ne sera certainement pas perdu maintenant Oui, et il y aura des fichiers persistants

    [root@redis-master ~]# redis-cli shutdown[root@redis-master ~]# redis-server /opt/redis_cluster/redis_6379/conf/6379.conf [root@redis-master ~]# [root@redis-master ~]# redis-cli127.0.0.1:6379> keys k_500
    1) "v_500"127.0.0.1:6379>

    Configuration de la persistance Redis (introduction dimage et de texte)

    réplication maître-esclave redis

    Pourquoi est-ce qu'on besoin de faire une réplication maître-esclave Redis ?
    Afin de résoudre le point de défaillance unique, copiez les données sur un ou plusieurs serveurs répliques (serveurs esclaves) pour obtenir une redondance et atteindre l'objectif de récupération des pannes et d'équilibrage de charge

    Créez un autre serveur et installez redis

    1. Par souci de simplicité, on copie directement le master précédent

    [root@redis-master ~]# scp -rp /opt/redis_cluster/ root@192.168.10.8:/opt

    2. Installez redis directement make install sans recompiler, il l'a déjà fait. été fait dans le maître

    Modifier le fichier de configuration

    cd /opt/redis_cluster/redis
    vim /opt/redis_cluster/redis_6379/conf/6379.conf 
    修改:
    	bind 127.0.0.1 192.168.10.8
    	slaveof 192.168.10.1 6379  #添加master的ip port保存退出

    3. Démarrez le service

    redis-server /opt/redis_cluster/redis_6379/conf/6379.conf

    Créez une nouvelle valeur de clé sur le maître. serveur et tester la synchronisation automatique du serveur esclave

    Configuration de la persistance Redis (introduction dimage et de texte)
    Configuration de la persistance Redis (introduction dimage et de texte)
    Remarque :
    Pendant le processus de synchronisation, le serveur esclave ne peut copier que les données de la base de données maître , et ne peut pas ajouter et modifier manuellement des données ;
    Si le serveur esclave doit modifier les données, il faut déconnecter la synchronisation :
    [root@redis-slave ~]# redis-cli slaveof no one

    invite OK

    Si le maître est vers le bas, le serveur esclave peut 手动断开同步 en premier. À ce moment, il est un individu indépendant, d'autres serveurs esclaves peuvent terminer le changement en 指向自己

    .

    Cet article est reproduit à partir de : https://blog.csdn net/weixin_43815140/article/details/106128848

    Pour plus de connaissances connexes, veuillez visiter le Site Web PHP chinois! !

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer