Redis入门
概述
Redis:REmote DIctionary Server(远程字典服务器)
是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行并支持持久
化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为结构化数据库。
Redis的功能
(1)内存存储,持久化,内存中是断电即失,所以说持久化很重要(rdb,aof)
(2)效率高,可以用于高速缓存
(3)发布订阅系统
(4)地图信息分析
(5)计时器,计数器(浏览量)
(6)......
Redis的特性
(1)多样的数据类型
(2)持久化
(3)集群
(4)事务
......
Redis安装
windows安装
(1)下载安装包
(2)解压到自己电脑上的环境即可! Redis很小
(3)开启Redis,双击运行服务即可。
(4)使用客户端连接redis
记住一句话,windows 下使用确实简单,但是Redis推荐我们使用Linux去开发使用
Linux安装
Redis性能测试工具可选参数如下图所示:
性能测试
# 测试:100个并发连接,100000请求
redis-benchmark -h localhost -p 6379 -c 100 -n 100000
Redis基础的知识
Redis默认有16个数据库
我们一般默认使用的是第0个数据库
可以使用select进行切换数据库
Redis是单线程的!
Redis是很快的,官方表示:Redis是基于内存操作,CPU不是Redis的性能瓶颈,Redis的瓶颈是根据机器的内存和网络带宽,
既然可以使用单线程来实现,那就是用单线程了。
Redis是C语言写的,官方提供的数据是100000+的QPS,完全不比同样是使用key-value的Memecache差!
为什么Redis单线程还这么快?
(1)误区1:高性能的服务器一定是多线程的?
(2)误区2:多线程(CPU上下文会切换)一定比单线程效率高
先去CPU->内存->硬盘的速度了解一下!
核心:redis是将所有的数据全部放在内存中,所以说使用单线程去操作效率就是最高的,多线程(CPU上下文会切换:耗时的操
作!!!),对于内存系统来说,如果没有上下切换效率就是最高的,多次读写都是在一个CPU上的,在内存情况下,这个就是
最佳的方案。