Redis的基本知识
Redis官网:Redis中文网
Redis简介
Redis是一个 开源(BSD许可),内存存储的数据结构服务器,可用作 数据库,高速缓存 和 消息队列代理。它支持 字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs 等数据类型。内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能,同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区。
修改配置文件
设置任意ip可以访问Redis
1、打开redis的安装路径 找到redis的配置文件 redis.conf
2、注释掉我们的配置文件中的bind
连接redis客户端
通过我们的命令行操作来连接我们的redis客户端进行操作
基础知识
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上的,在内存情况下,这个就是最佳的方案!
版权申明
本文系作者 @WangJun 原创发布在wangjun's blog站点。未经许可,禁止转载。
暂无评论数据