As an open source (BSD licensed) in-memory data structure storage system, Redis can be used as a database, cache and message middleware. It supports many types of data structures, such as strings, hashes, lists, sets, sorted sets and range queries, bitmaps, hyperloglogs and geospatial ( geospatial) index radius query.
Redis has built-in replication, LUA scripting, LRU eviction, transactions and different levels of disk persistence, and through Redis Sentinel ) and automatic partitioning (Cluster) provide high availability.
Redis is based on memory operation. CPU is not the performance bottleneck of redis. Its bottleneck depends on the machine’s memory and network bandwidth, so single-threading can be used. To implement it, just use a single thread.
So why is it so fast with a single thread?
First of all, there are two misunderstandings that need to be clarified:
High-performance servers are not necessarily multi-threaded.
Multi-threading is not necessarily more efficient than single-threading.
Redis puts all the data into the memory. If there are multiple threads, there will be CPU switching context, which increases the time consumption. For the memory system, there is no context switching. Single-threaded operation efficiency is the highest.
Redis has 16 databases by default, and the default use is the first database (subscript 0). You can check the configuration file, which contains database 16
.
select 3
to switch to the fourth database.
dbsize
You can check the current database size.
At this time, set a value in the database and check the database size again, and it will change.
Clear the current database
flushdb
Clear all databases
flushall
set name pingguo222
You can view all keys. Switch back to the default database here and view all keys.
keys *
get name
exists name
If it exists, it returns 1, if it does not exist, it returns 0.
The MOVE command moves the key of the current database to the given database db.
move name 0
For example, assuming you are currently in database 3, you want to execute a command to move the content named "name" to database 0. Returns 1 if successful, 0 if failed.
I set the age to expire after 10s. If I get it again after 10s, I will not get the value.
expire age 10
I set the name expiration time to 100s and use ttl to check it.
ttl name
type name
There are actually many commands, and the redis official website provides query commands If you don't know what's going on later, just check it out.
The above is the detailed content of Example analysis of common operation commands for getting started with Redis. For more information, please follow other related articles on the PHP Chinese website!