Redis--Lesson02--Redis入门
入门
什么是Redis呢
Redis(Remote Dictionary Server)是一个开源的、基于内存的数据结构存储系统,它可以用作数据库、缓存和消息中间件。它支持多种数据结构,如字符串(Strings)、哈希(Hashes)、列表(Lists)、集合(Sets)和有序集(Sorted Sets)等,并提供了对这些数据结构的丰富操作命令。
由于其灵活性和高效性,Redis被广泛应用于提升应用的响应速度,特别是在需要频繁访问数据的场景下表现尤为突出。例如,在社交网络、游戏、电子商务等领域中,常常用来作为缓存系统减少数据库的压力,或者用于实现复杂的业务逻辑。
Redis会周期性的把更新的数据写入到磁盘或者把修改的操作追加到记录文件之中,并且在此基础之上实现类master-slave(主从同步),是当下最热门的NoSQL技术之一,也被称为结构化数据库
Redis可以做什么呢?
- 内存储存,持久化,可以持久化内存中保存到数据
- 效率高,可以用于高速缓存
- 发布订阅系统
- 地图信息分析
- 计时器,计数器(浏览量!)
在Linux上安装Redis
1.下载安装包:https://www.redis.net.cn/

2.上传文件到Linux上
上传的文件为redios,使用Xhell可以暗转lrzsz进行上传:安装命令sudo yum install lrzsz
安装之后,输入rz;选择文件上传
默认上传在home目录中就好了

3.移动压缩包到opt目录
由于程序一般都在opt中,故而将redis移动到opt目录中
mv redis-5.0.4.tar.gz /opt

4解压redis
tar -zxvf redis-5.0.4.tar.gz


5.安装gcc环境(c语言环境)
yum install gcc-c++
使用make命令,配置相关环境
make
安装好之后,再次make,确认是否安装好

6.redis默认的安装路径
cd /usr/local/bin
拷贝配置文件,方便错误回滚
mkdir msfconfig
cp /opt/redis-5.0.4/redis.conf msfconfig

之后使用拷贝的配置文件启动,保证备份的config用于回滚
7.修改redis为后台运行
vim redis.conf

将daemonize改为yes,即后台挂载模式
8.通过指定的额配置文件启动服务,即我们copy的那个config文件
进入redis所在的bin目录
cd /usr/local/bin
redis-server msfconfig/redis.conf (启动redis)

9.连接redis
redis-cli -h 主机(默认本机) -p 端口
redis-cli -p 6379(默认端口号)

输入ping 返回 pong,说明连接成功
10.查看redis是否开启
ps -ef|grep redis

11.关闭redis服务
shutdown

再次查看进程是否存在

redis-benchmark性能测试

redis-benchamark是官方自带的压力测试工具,上图就是压力测试的参数
测试时需要redis服务处于开启,接下来就简单测试一下:
有100个并发,且每个并发触发100000次请求
redis-benchmark -h localhost -p 6379 -c 100 -n 100000
简单查看分析

redis基础知识
redis默认有16个数据库,可以通过config文件确认:

且默认的选中的数据库是0号数据库[0,15]
可以使用select切换数据库

没有索引的提示为0号数据库,可以通过select index 确认需要转换的数据库
DBSIZE:查看数据库大小

keys *:查看当前数据库已有的键值对

flushdb:清空当前数据库

flushall:清空所有数据库,即redis的全部数据库

Redis是单线程的:由于Redis是很快的,官方表示Redis是基于内存操作的,故而CPU不是Redis的瓶颈,Redis的瓶颈是根据机器的内存和网络带宽确定的,既然可以使用单线程来实现,就使用单线程了
Redis为什么单线程还那么快?
误区1:高性能的服务器一定是多线程的?
误区2:多线程(CPU会上下文切换)一定比单线程效率高?
Redis是将数据全部放在内存中操作,所以使用单线程去操作效率是最高的,多线程会实现上下文切换,对于内存操作的Redis会显得很耗时,故而对于内存系统来说,没有上下文切换的操作效率是最高的。

浙公网安备 33010602011771号