Home >
Database >
SQL >
Redis persistence configuration (picture and text introduction)
Redis persistence configuration (picture and text introduction)
烟雨青岚
Release: 2020-06-17 16:40:01
forward
2978 people have browsed it
##Persistence configuration of redis (picture and text introduction)redis brief introductionredis is an open source, highly available
non-relational database written in c language (NoSQL, not just a database) A key-value database.
Different from traditional databases, redis data exists in
memory, so the read and write performance is not generally high and can reach 100,000 operations per second, so it is widely used Go to the caching direction, for example: share sessions with tomcat in the website architecture, do database caching, etc.
Advantages and disadvantages of redisAdvantages
The reading and writing speed is fast, the reading can reach 110000 times/s, and the writing can reach 81000 times/s. Written in C language, the code is elegant, and it is a single-threaded architecture, so the execution efficiency is high and the speed is fast
Supports multiple data structures, string (string, also the most commonly used), Hash, list, set, ordered set (ZSET)
Rich functions, such as: natural counter, key expiration function, Message queue, etc.
Supports many client languages, supports php, java, python
Supports data persistence
Comes with a variety of high-availability architectures, such as: master-slave replication, sentry, high-availability cluster
Disadvantages
Precisely because the data is stored in the memory, the requirements for server performance are strict. You can choose how much memory to purchase based on the business volume. It is difficult to achieve online expansion, so the first purchase requires Caution
Persistence is mentioned above, what is persistence? Persistence supports writing data in memory to disk to prevent all data in memory from being lost if the server goes down.
How to achieve persistenceSupports two formats of persistent data AOF, RDB, and the mixed use of these two AOF&RDB
Note: When these are turned on, redis AOF is preferred for data recovery, but RDB is the default persistence method.
AOF persistence: It records every command executed by redis into a separately designated log file. When restarting or data is to be restored, the data in the log file will be restored
RDB : Just like taking a snapshot, define the snapshot period according to the save parameters defined in the configuration file, and then save it to the hard disk. A dump.rdb file will be generated.
Comparison between AOF and RDB:
1AOF files are updated more frequently than rdb, priority is given to using aof to restore
aof is more secure than rdb
rdb performance Better than aof, when the amount of data is large, the log recovery speed is slower than rdb
When reading and writing continuously, if rdb takes a snapshot, there will be data delay and the recovered data will be incomplete
Redis data structure
Data type
Storage value
Commonly used operations Command
Application scenarios
string
String
SET (create), GET ( View), DEL (delete), MSET (batch creation), MGET (batch view
for caching, expiration time of key-value pairs, save session in redis, delete after expiration, cache user information, cache Mysql part Data, mall coupon expiration time, etc.
list
List
RPUSH (create, add to the right if it exists), LPUSH (add to the left , LRABGE range (view range value), RPOP (delete the last one on the right), LPOP (delete the last one on the left)
Generally used in combination with zset, mainly used in rankings, popularity/click rankings, and live broadcasts Ranking among the top brothers on the list, etc.
hash
Hash
HMSET object (create the key value of the object, targeting an object), HGET Object (view a parameter of the object)
Generally the key is an ID or unique identifier, and the value is the corresponding detailed information, such as: product information, personal information, news, etc.
SET
Unordered set
SADD (create a set), SMEMBERS (view a set), SREM (delete the value of a set), SDIFF set 1 set 2 (find the difference set), SINTER Set 1 Set 2 (finding the union), SUNION Set 1 Set 2 (finding the union)
Find the intersection, union, collection, applied to social networks, such as: common hobbies, common friends, etc.
Explain why you create the conf, logs, and pid directories yourself instead of letting them Initialization is automatically generated We are in order to start multiple redis processes on one host to realize the later redis cluster (at least 6) (Author computer configuration does not allow me to operate arbitrarily)
2. Download redis Installation package
cd /redis/soft
wget http://download.redis.io/releases/redis-5.0.6.tar.gz
Copy after login
3. Unzip redis to /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 #做好软连接,方便自己管理
Copy after login
4. Change directory to install redis
cd /opt/redis_cluster/redis
make && make install
Copy after login
5. Write your own configuration file/opt /redis_cluster/redis_6379/conf/6379.conf Add some important content
#!/bin/bashfor i in {1..500}do
redis-cli set k_$i v_$idone
Copy after login
When you close the database at this time, the things in the memory will definitely be lost, but now they will definitely not be lost, and there will be persistent files
Why do we need to do redis master-slave replication? In order to solve the single point of failure, copy the data to one or more replica servers (slave servers) to achieve redundancy and achieve the purpose of fault recovery and load balancing
Start another server and install redis
1. For simplicity, we directly copy the previous master
Create a new key value on the master server and test the automatic synchronization of the slave server
Note: During the synchronization process, the slave server can only copy the data of the master database, and cannot manually add and modify data; If the slave server must modify Data needs to be disconnected from synchronization: [root@redis-slave ~]# redis-cli slaveof no one
Just prompt OK
If the master is down If the machine is running, the slave server can manually disconnect the synchronization first. At this time, it is an independent individual. The other slave servers can thenpoint to itself to complete the switch
This article is reproduced from: https://blog.csdn.net/weixin_43815140/article/details/106128848
The above is the detailed content of Redis persistence configuration (picture and text introduction). For more information, please follow other related articles on the PHP Chinese website!
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn