开发者学堂课程【Redis 入门实战演练: redis 实现消息队列及常用命令(三)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/653/detail/10838
redis 实现消息队列及常用命令(三)
十三、订阅匹配的频道
>PSUBSCRIBE chann *
#匹配订阅多个频道
(如果频道的名称有规范的话,可以匹配开头,中间,结尾。以上是匹配结尾的事例。开头都是 chann,但是后缀不一样,可能是 chann1、chann2 等)这是想要订阅者都监听,可以这样订阅:
订阅指定频道:
127.0.0.1:6379> SUBSCRIBE chann*
Reading messages... (press Ctrt-C to quit)
1)"subscribe"
(2)"chann*"
3) (integer) 1
订阅所有:
(为什么不能订阅多个频道?因为数据类型不一样。当我们在登录的时候,不同业务之间的数据不一样,那么不同数据不一样就较难实现一个订阅者可以接受多个上游应用产生的日志,以及对这个日志产生的处理。)较多使用 activeMQ
十四、rides 常用命令
链接:http://www.rides.net.cn/order
(Type 命令、rename 命令)
1、CONFIG
命令用于查看当前 rides 配置,以及不重启更改 rides 配置等。
进入之后使用CONFIG GET *(如果不知道就 get*),会显示出当前 rides 所有的配置。这些配置信息是从配置文件里面读取出来的。
127.0.0.1:6379> CONFIG GET
127.0.0.1:6379> CONFIG GET
1)"dbfilename"
2)"dump_6379.rdb"
3)"requirepass"
4)
5)"masterauth"
6)
7)"cluster-announce-ip"
8)
9)"unixsocket*
10)
11)"logfile"
12) °/epps/redis/logs/redis_6379.log"
13)I"pidfile"
14)/apps/redis/run/redis_6379.pid
15)"slave-announce-ip"
16)
17)"maxmemory"
18)"2147483648*
19)"proto-max-bulk-ten"
奇数行是配置项(bind)后面的数字是偶数项
监听地址、端口必须重启才可以改配置。
不想重启服务,但是需要修改配置(内存,密码),怎么修改?
改:Maxmenmory 最大内存数
2、设置连接密码
127.0.0.1:6379>CONFIG SET require epass
(加上想要设置的密码)123456
OK
配置完成之后需要重新认证才能查看到配置。否则不能查看信息。
在交互的命令行里面的配置,在重启之后都会失效。
配置一定要保存到配置文件里面,方便重启之后设置还在。(非常重要)
3、Info
显示当前节点 redis 运行状态信息
想去查看运行状态,info 命令是必不可少的。在 info 命令当中分了几个阶段。一个是serve、
(本身的一些统计信息,版本,系统内核,运行模式)clients(客户端,内存统计,以用内存和总内存,持久化配置)
4、SELECT
切换数据库,等于 MySQL 的use DBNAME
指令
127.0.0.1:6379> SELECT 1
OK
127.0.0.1:6379【1】>
5、Keys
查看当前库下的所有 key
127.0.0.1:6379- KEYS
1)"get 1"
2)"zset 2"
3)"key2"
4"key1"
5)"set2”
6)"zset1*
7)"num"
8)"List1
”
9)
”
hset1
”
127.0.0.1:6379>
6、BGSAVE
手动在后台执行 RDB 持久化操作
127.0.0.1:6379> BGSAVE
Background saving started
127.0.0.1:6379>
7、DBSIZE
返回当前库下的所有key数量
127.0.0.1:6379> DESIZE
(integer) 9
127.0.0.1:6379>
在执行 key 之前,最好先执行一下 DBSIZE,看一下当前 DB 有多少 key
8、FLUSHDB
强制清空当前库中的所有 KEY
127.0.0.1:6379>
FLUSHDB
OK
127.0.0.1:6379
127.0.0.1:6379 FLUSHDB
OK
127.0.0.1:6379>
127.0.0.1:6379>
9、FLUSHALL
强制清空当前 redis 服务器所有数据库中的所有 key,即删除所有数据。
127.0.0.1:6379 FLUSHDB
OK
127.0.0.1:6379>
127.0.0.1:6379> FLUSHALL
OK
127.0.0.1:6379>
重点:rides 配置(前面讲的配置文件),持久化,数据备份。
十五、redis 高可用与集群
虽然 redis 可以实现单机的数据持久化,但无论是 RDB 也好或者 AOF 也好,都解决不了单点问题,即一旦单台 redis 服务器本身出现系统故障,硬件故障等问题后,就会直接造成数据丢失,因此需要使用另外的技术来解决单点问题。