Redis官网:Redis中文网

Redis简介

Redis是一个 开源(BSD许可),内存存储的数据结构服务器,可用作 数据库高速缓存消息队列代理。它支持 字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs 等数据类型。内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能,同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区。

修改配置文件

设置任意ip可以访问Redis

1、打开redis的安装路径 找到redis的配置文件 redis.conf

image-20221030151821298

2、注释掉我们的配置文件中的bind

image-20221030152141484

image-20221030152222758

连接redis客户端

通过我们的命令行操作来连接我们的redis客户端进行操作

image-20221030153421524

基础知识

redis默认有16个数据库,打开我们的redis配置文件可以看到。默认使用的是第0个

默认多少个数据库

出现 (error) NOAUTH Authentication required.,是由于redis设置了密码 需要先验证才能操作!
auth 'Redis配置的密码'
可以使用select切换数据库
127.0.0.1:9807[1]> select 1
OK
127.0.0.1:9807[1]> dbsize
(integer) 0
查看所有的key
127.0.0.1:9807> keys *
1) "Notes_o2WiR4iq6NjgAfiRiD4h_UtCkkDU"
2) "dynamic_o2WiR4iq6NjgAfiRiD4h_UtCkkDU"
3) "UnprocessedNotes_o2WiR4iq6NjgAfiRiD4h_UtCkkDU"
设置key value
127.0.0.1:9807> set name wangjun
OK
获取key的value
127.0.0.1:9807> get name
"wangjun"
清除当前数据库
flushdb
清除全部数据库的内容
127.0.0.1:9807[1]> FLUSHALL
OK
Redis是单线程的!

明白Redis是很快的,官方表示,Redis是基于内存操作的,CPU不是Redis性能瓶颈,Redis的瓶颈是根据机器的内存和网络带宽,既然可以使用单线程来实现,就是用单线程了~

Redis是C语言写的,官方提供的数据为 10 万+的QPS,完全不比同样是使用key-value的Memecache差!

Redis为什么单线程还这么快?

误区一:高性能的服务器一定是多线程的?

误区二:多线程(CPU上下文会切换!)一定比单线程效率高

CPU>内存>硬盘的速度要有所了解!

核心:Redis是将所有的数据全部放在内存中的,所以说使用单线程去操作效率就是最高的,多线程(CPU上下文会切换:耗时的操作),对于内存系统来说,如果没有上下文切换效率就是最高的!多次读写都是在一个CPU上的,在内存情况下,这个就是最佳的方案!

分类: 技术 标签: 暂无标签

评论

暂无评论数据

暂无评论数据

目录