【Redis】(一)简介及安装使用
redis简介
1、redis官网 英文官网:https://redis.io 中文官网:http://redis.cn(中文网站版本会落后一些)
2、redis全称为Remote Dictionary Server,用C语言编写,免费开源,key-value型内存数据库。
3、redis是nosql(not only sql)数据库,支持内存持久化(内存写入磁盘)
4、高性能,官方性能测试(6.0之前的版本),50个并发执行100000个请求,读速度110000次/s,写速度81000次/s,6.0之后的多线程版本性能进一步提升。
5、6.0之前的版本为单线程,从6.0之后开始支持多线程。
为什么要用Redis
背景
1、大数据时代的3V,海量Volume,多样Variety,实时Velocity
2、大数据时代对程序的要求3高,高并发,高可用,高性能
传统的关系型数据库出现的问题
1、扩展瓶颈:数据关系复杂,扩展性差,不便于大规模集群
2、性能瓶颈:磁盘IO性能低下
解决思路
1、降低磁盘IO次数(在内存操作可以有效降低磁盘IO次数)
2、尽量把数据间的关系简单化(不存储关系,仅存储数据)
解决方案
内存型NoSql型数据库(Redis、Memcached),这里只讨论Redis。
Redis的应用场景
- 为热点数据加速查询(主要场景)、如热点商品、热点新闻、热点资讯、推广类等提高访问量信息等。
- 任务队列、如秒杀、抢购、购票等
- 时效性信息控制,如验证码控制,投票控制等
Redis的安装
Windows下安装
1、下载安装包,https://github.com/microsoftarchive/redis/tags(redis官方现在只维护linux版本了,redis的windows本由微软维护)
2、这里下载了Redis-x64-3.2.100.zip版本,放到自己需要的目录,解压
3、测试运行,双击redis-server.exe启动服务器,然后双击redis-cli.exe客户端启动
启动服务器和客户端之后,出现如下图的两个窗口,在客户端输入ping,返回PONG及表示连接成功。接下来就可以在客户端输入更多命令测试了,详细命令见官网。
linux下安装(这里以centos7为例)
1、下载安装包并编译(redis6.05)
wget http://download.redis.io/releases/redis-6.0.5.tar.gz
tar xzf redis-6.0.5.tar.gz
cd redis-6.0.5
make
2、make执行之后可能会报的错:/bin/sh: cc: command not found
这是没有安装gcc,解决方法安装gcc
yum -y isntall gcc
3、继续make还可能会报错:server.c:xxxx:xx: error: ‘xxxxxxxx’ has no member named ‘xxxxx’
这是gcc版本比较老,解决方法安装更新最新的gcc
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
# scl命令启用只是临时的,退出shell或重启就会恢复原系统gcc版本。
# 如果要永久使用gcc 9.1的话:
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
source /etc/profile
4、成功make后执行 make test,然后可能会继续报错:
You need tcl 8.5 or newer in order to run the Redis test
tcl版本过低,解决方法安装大于8.5的Tcl
yum install tcl -y
5、如果成功运行make test,表示redis安装成功
## redis-6.0.5目录下,启动服务器
./src/redis-server
## 打开一个新的shell窗口,redis-6.0.5目录下,启动客户端
./src/redis-cli
## 客户端接着执行ping,返回PONG表示成功连接服务器
ping