Κοινή χρήση τεχνολογίας

Στρατηγική λήξης και απαξίωσης δεδομένων Redis

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Στρατηγική λήξης και απαξίωσης δεδομένων Redis

Πολιτική λήξης

Προγραμματισμένη λήξη

Στις ρυθμίσειςkeyΤαυτόχρονα με το χρόνο λήξης, τοkeyΔημιουργήστε ένα χρονόμετρο και αφήστε το χρονόμετροkey Όταν έρθει η ώρα λήξης, διαγράψτε το κλειδί. Θα διαγραφεί αμέσως μετά τη λήξη.Αυτή η στρατηγική μπορεί να διαγράψει τα δεδομένα που έχουν λήξει αμέσως και είναι πολύ φιλική προς τη μνήμη, αλλά θα καταλαμβάνει πολλή μνήμη.CPU​Οι πόροι χρησιμοποιούνται για την επεξεργασία δεδομένων που έχουν λήξει, επηρεάζοντας έτσι τον χρόνο απόκρισης και την απόδοση της κρυφής μνήμης.

Τεμπέλης εκπνοή

Μόνο κατά την πρόσβαση σε αkey Όταν λήξει το κλειδί, θα κριθεί αν έχει λήξει και θα διαγραφεί όταν λήξει.Αυτή η στρατηγική μπορεί να μεγιστοποιήσει την εξοικονόμηση πόρωνCPU Πόροι, αλλά πολύ μη φιλικοί στη μνήμη.Σε ακραίες περιπτώσεις, μπορεί να συμβεί μεγάλος αριθμός λήξεωνkeyΔεν έχει γίνει ξανά πρόσβαση, επομένως δεν θα διαγραφεί και καταλαμβάνει πολλή μνήμη.

Λήγει τακτικά

Κάθε συγκεκριμένο χρονικό διάστημα, ένας συγκεκριμένος αριθμός βάσεων δεδομένων θα σαρώνεται.expiresΟρισμένος αριθμός λέξεων στο λεξικόkeyκαι διαγράψτε το ληγμένοkey . Αυτή η στρατηγική είναι ένας συμβιβασμός μεταξύ των δύο πρώτων.Προσαρμόζοντας το χρονικό διάστημα των προγραμματισμένων σαρώσεων και την περιορισμένη χρονική κατανάλωση κάθε σάρωσης, μπορεί να επιτευχθεί υπό διαφορετικές συνθήκες.CPUκαι πόρους μνήμης για να επιτευχθεί το βέλτιστο αποτέλεσμα ισορροπίας.

στρατηγική εξάλειψης

Η στρατηγική εξάλειψης μνήμης του Redis αναφέρεται στον τρόπο υποβολής αίτησης για νέα μνήμη όταν η μνήμη του Redis για προσωρινή αποθήκευση είναι ανεπαρκής.

  • noeviction​: Όταν η μνήμη δεν είναι αρκετή για να χωρέσει τα πρόσφατα γραμμένα δεδομένα, η λειτουργία νέας εγγραφής θα αναφέρει ένα σφάλμα.
  • allkeys-lru​: Όταν η μνήμη δεν είναι αρκετή για να χωρέσει πρόσφατα γραμμένα δεδομένα, αφαιρέστε το κλειδί που χρησιμοποιήθηκε λιγότερο πρόσφατα στο χώρο κλειδιού.
  • allkeys-random​: Όταν η μνήμη δεν είναι αρκετή για να χωρέσει τα πρόσφατα γραμμένα δεδομένα, ένα κλειδί αφαιρείται τυχαία από το χώρο κλειδιού.
  • volatile-lru​: Όταν η μνήμη δεν είναι αρκετή για να φιλοξενήσει νέα δεδομένα, αφαιρέστε το κλειδί που χρησιμοποιήθηκε λιγότερο πρόσφατα στο χώρο κλειδιού με καθορισμένο χρόνο λήξης.
  • volatile-random​: Όταν η μνήμη δεν είναι αρκετή για να φιλοξενήσει πρόσφατα γραμμένα δεδομένα, ένα κλειδί αφαιρείται τυχαία από τον χώρο κλειδιού με καθορισμένο χρόνο λήξης.
  • volatile-ttl​: Όταν η μνήμη δεν είναι αρκετή για να φιλοξενήσει πρόσφατα γραμμένα δεδομένα, στο χώρο πλήκτρων με καθορισμένο χρόνο λήξης, τα κλειδιά με προγενέστερο χρόνο λήξης θα αφαιρεθούν πρώτα.

Συνοψίζω

Επιλογή στρατηγικής λήξης

Λειτουργία συνδυασμού τεμπέλης διαγραφής και κανονικής διαγραφής.

Επιλογή στρατηγικής εξάλειψης

allkeys-lru