Question

Par « durable » Je veux dire, le serveur peut se bloquer à tout moment, et aussi longtemps que le disque reste dans le tact, aucune perte de données (voir ACIDE ). On dirait que ce que soit le mode de journalisation est pour, mais si vous activez la journalisation, ne pas que la défaite dans le but d'exploiter des données en mémoire? Les opérations de lecture peuvent ne pas être affectées par la journalisation, mais il semble journalisé tueraient vos performances en écriture.

Était-ce utile?

La solution

Redis est pas habituellement déployé en tant que magasin de données "durable" (au sens du "D" dans ACID.), Même avec la journalisation. La plupart des cas d'utilisation sacrifient volontairement un peu de durabilité en retour pour la vitesse.

Cependant, le mode de stockage « append fichier uniquement » peut éventuellement être configuré pour fonctionner de manière durable, au détriment de la performance. Il devra payer une fsync () sur chaque modification. Pour configurer cela, définir ces deux options dans votre fichier .conf:

 appendonly yes
 appendfsync always

A partir de la documentation: Comment durable est le seul append fichier?

  

Vérifiez redis.conf, vous pouvez configurer   combien de fois Redis seront données fsync ()   sur le disque. Il y a trois options:

     
      
  • Fsync () chaque fois qu'une nouvelle commande est   annexé au fichier journal append. Très   très lent, très sûr.
  •   
  • Fsync () une fois   chaque seconde. Assez vite, et vous pouvez   perdre 1 seconde de données en cas de   catastrophe.
  •   
  • Ne jamais fsync (), il suffit de mettre votre   données dans les mains de l'exploitation   Système. La méthode plus rapide et peu sûres.
  •   

(Notez que la valeur par défaut pour appendfsync dans le fichier de configuration avec l'expédition Redis post-2.0.0 est everysec, et non always.)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top