Talk a lot
Now the interview requirements are becoming more and more difficult , I would like to interview the development post after graduation if you would use Redis , In the interviewer's mind will feel , Ouch! , You're good , It's a bonus . current Redis Become a necessary skill for developers , If you haven't used or can't use the interview Redis, Then you can really be dissuaded . Keep learning new technology , Maybe it's the fate of developers .
Redis Can be used for caching , Also belong to NoSQL database , So it also supports data persistence ,Redis The database supports two persistence schemes ：
- RDB snapshot
- AOF journal
- Mix persistence
redis.conf The main configuration involved
#1、 Automatic backup rules ( If a condition is met, the backup action will be triggered ) save 900 1 # every other 900 Second has 1 The next change triggers save 300 10 # every other 300 Second has 10 The next change triggers save 60 10000 # every other 60 Second has 10000 The next change triggers #2、 Whether to prohibit the client from writing after the snapshot backup error occurs , The default is yes stop-writes-on-bgsave-error yes #3、 Whether to compress the snapshot file , Default yes rdbcompression yes #4、 Whether the RDB Check the file , Default yes rdbchecksum yes #5、 Define generated RDB file name , Default dump.rdb dbfilename dump.rdb #6、 Definition generation RDB File directory , The default is to start Redis Directory of services dir ./
Just installed Redis, This persistence mode is enabled by default , A backup will be made in the directory where the service is started dump.rdb file ,Redis This file will be automatically loaded to restore the backup data when starting .
- We can go through Redis Client sends command save Manually backup a snapshot of the current data , however save It's a blocking command , When the backup file is too large , When the backup operation is not completed , Other operation commands received during this period will be suspended . So it's not recommended save, This is when bgsave, See the name and know the meaning , It will fork A child process to handle the backup operation , Does not affect the main process processing client request command .
- Trigger the configured automatic backup policy , Automatically bgsave.
- perform shutdown command , Will trigger save command , The service will not be shut down until the backup is completed .
- When setting up master-slave replication , After the slave is connected to the host , Will automatically send a sync Synchronization command , The host received a command
after , First, execute bgsave Snapshot backup of data , Then it sends the snapshot data to the slave for synchronization .
#1、 Turn on aof To configure , Default no appendonly yes #2、 Define generated AOF file name appendfilename "appendonly.aof" # 3、 Automatic backup rules ( Choose one ) # appendfsync always # Every change is backed up appendfsync everysec # Back up every second # appendfsync no # The operating system automatically schedules disk swiping #4、 whether aof The synchronization operation continues while the file is compressed , Default no no-appendfsync-on-rewrite no #4、 Define when aof The file size is larger than that of the last rewrite aof What percentage of the file size , Rewrite it again auto-aof-rewrite-percentage 100 #5、 If it hasn't been rewritten before , It is based on the aof Based on size , Simultaneous requirements aof The file should be at least larger than 64M auto-aof-rewrite-min-size 64mb
Default AOF It's not turned on ,AOF Persistence is the addition of executed commands to AOF At the end of the file , During data recovery, execute the command from the beginning to the end
Use AOF Way to do persistence , You can put RDB The strategy for persistence is annotated out
save "" #save 900 1 #save 300 10 #save 60 10000
This function is Redis4 After that, I added , To be honest, I just learned about it the other day , Not much contact , Here is a brief introduction , If you want to go deeper, you will be disappointed , Go out and turn left and go straight ......
Set to... By the above parameters yes To open , When data is written, the data is first written as RDB At the beginning of the file , And then the following orders will be AOF The format is appended to the file , This is the introduction of RDB The advantages of fast data recovery and AOF Advantages of low risk of data loss .
Redis Part of the mind map
If the picture is not clear , And no. charmsongo reply Redis obtain
If there is anything wrong, please identify , Thank you in advance