Els Fitxers Només de Afegeix (AOF) són una de les dues maneres principals que Redis utilitza per persistir les dades a disc. AOF proporciona una manera més segura i flexible de garantir que les dades no es perdin en cas de fallada del sistema.
Què és AOF?
AOF és un mètode de persistència que registra cada operació d'escriptura que es realitza en la base de dades. Aquestes operacions s'emmagatzemen en un fitxer de registre que es pot reproduir per reconstruir l'estat de la base de dades en cas de reinici.
Avantatges de l'AOF
- Durabilitat: AOF pot ser configurat per sincronitzar les dades amb el disc després de cada operació, minimitzant la pèrdua de dades.
- Reproducció: El fitxer AOF pot ser reproduït per reconstruir l'estat de la base de dades.
- Compactació: Redis pot reescriure el fitxer AOF per compactar-lo i reduir la seva mida.
Desavantatges de l'AOF
- Rendiment: Pot ser més lent que RDB (instantànies) perquè cada operació d'escriptura ha de ser registrada.
- Mida del fitxer: El fitxer AOF pot créixer ràpidament, especialment en bases de dades amb moltes operacions d'escriptura.
Configuració de l'AOF
Per activar l'AOF, cal modificar el fitxer de configuració de Redis (redis.conf
). Aquí tens els passos bàsics:
-
Activar l'AOF:
appendonly yes
-
Configurar la freqüència de sincronització:
# Sincronitza cada segon (compromís entre rendiment i durabilitat) appendfsync everysec # Sincronitza després de cada operació d'escriptura (màxima durabilitat, menor rendiment) appendfsync always # No sincronitza automàticament (delega la sincronització al sistema operatiu) appendfsync no
-
Reescriptura automàtica de l'AOF:
auto-aof-rewrite-percentage 100 auto-aof-rewrite-min-size 64mb
Exemple Pràctic
Activar l'AOF
- Obre el fitxer de configuració de Redis (
redis.conf
). - Cerca la línia
appendonly no
i canvia-la aappendonly yes
. - Configura la freqüència de sincronització segons les teves necessitats. Per exemple:
appendfsync everysec
Reescriptura de l'AOF
Redis pot reescriure l'AOF per compactar-lo i millorar el rendiment. Això es fa automàticament quan el fitxer AOF creix més del doble de la mida de l'última reescriptura i és més gran que 64MB (configurable).
Comandes Relacionades amb l'AOF
-
BGREWRITEAOF: Inicia una reescriptura de l'AOF en segon pla.
BGRWRITEAOF
-
AOFSYNC: Sincronitza manualment l'AOF amb el disc.
AOFSYNC
Exercici Pràctic
Exercici 1: Activar i Configurar l'AOF
- Activa l'AOF en el fitxer de configuració de Redis (
redis.conf
). - Configura la sincronització perquè es realitzi cada segon.
- Reinicia el servidor Redis per aplicar els canvis.
Solució
-
Obre
redis.conf
i modifica les següents línies:appendonly yes appendfsync everysec
-
Reinicia el servidor Redis:
redis-server /path/to/redis.conf
Exercici 2: Reescriptura Manual de l'AOF
- Inicia una reescriptura de l'AOF en segon pla utilitzant la comanda
BGREWRITEAOF
. - Verifica que la reescriptura s'ha completat correctament.
Solució
-
Executa la comanda
BGREWRITEAOF
en la CLI de Redis:BGREWRITEAOF
-
Verifica l'estat de la reescriptura:
INFO persistence
Conclusió
Els Fitxers Només de Afegeix (AOF) són una eina poderosa per garantir la durabilitat de les dades en Redis. Tot i que poden tenir un impacte en el rendiment, ofereixen una major seguretat en termes de pèrdua de dades. La configuració adequada de l'AOF permet trobar un equilibri entre rendiment i durabilitat, adaptant-se a les necessitats específiques de cada aplicació.
Curs de Redis
Mòdul 1: Introducció a Redis
Mòdul 2: Estructures de Dades de Redis
Mòdul 3: Comandes i Operacions de Redis
Mòdul 4: Persistència de Redis
- Instantànies (RDB)
- Fitxers Només de Afegeix (AOF)
- Configuració de la Persistència
- Còpia de Seguretat i Restauració
Mòdul 5: Seguretat de Redis
Mòdul 6: Optimització del Rendiment de Redis
Mòdul 7: Clúster i Alta Disponibilitat de Redis
Mòdul 8: Mòduls i Extensions de Redis
- Introducció als Mòduls de Redis
- Mòduls Populars de Redis
- Creant Mòduls Personalitzats
- Utilitzant Redis amb Altres Tecnologies