Redis之基础知识讲解

单进程

Redis是单进程的

单进程模型来处理客户端的请求。对读写等事件的响应
是通过对epoll函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行效率;

epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,
它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。

分库

Redis默认16个库,可以在redis.conf中配置。
库号从0开始,默认使用0号库;

select命令切换库:

127.0.0.1:6379> set k1 v1
OK
127.0.0.1:6379> get k1
"v1"
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> get k1
(nil)
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> get k1
"v1"

常用命令

dbsize查看当前数据库的key的数量:

127.0.0.1:6379> dbsize
(integer) 5
127.0.0.1:6379> set k1 v1
OK
127.0.0.1:6379> set k2 v2
OK
127.0.0.1:6379> dbsize
(integer) 7

keys查找符合给定模式pattern的key:

127.0.0.1:6379> keys *
1) "test"
2) "k1"
3) "counter:__rand_int__"
4) "mylist"
5) "k2"
6) "myset:__rand_int__"
7) "key:__rand_int__"
127.0.0.1:6379> keys k?
1) "k1"
2) "k2"
127.0.0.1:6379> keys k*
1) "k1"
2) "k2"
3) "key:__rand_int__"

flushdb清空当前库:

127.0.0.1:6379> keys *
1) "test"
2) "k1"
3) "counter:__rand_int__"
4) "mylist"
5) "k2"
6) "myset:__rand_int__"
7) "k3"
8) "key:__rand_int__"
127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> keys *
(empty list or set)

flushall清空所有库:

127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> set k1 v1
OK
127.0.0.1:6379> set k2 v2
OK
127.0.0.1:6379> set k3 v3
OK
127.0.0.1:6379> keys *
1) "k1"
2) "k3"
3) "k2"
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
(empty list or set)
127.0.0.1:6379[1]> set s1 v1
OK
127.0.0.1:6379[1]> set s2 v2
OK
127.0.0.1:6379[1]> set s3 v3
OK
127.0.0.1:6379[1]> keys *
1) "s3"
2) "s2"
3) "s1"
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> keys *
1) "k1"
2) "k3"
3) "k2"
127.0.0.1:6379> flushall
OK
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
(empty list or set)
发布了107 篇原创文章 · 获赞 19 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/chen_changying/article/details/103329429
今日推荐