2.Redis背景和使用场景

Redis:一个在内存中存储数据的中间件;

1.Redis一些特性(优点)

1)内存存储数据;key-value存储,非关系型数据库

2)可编程性,可以用脚本语言Lua操作;

3)可拓展性,Redis支持在原有的功能上在进行拓展,提供了一组API。

通过C,C++,Rust可编写Redis扩展(本质是动态库)。

4)持久性,Redis把内存放在内存上,内存是易失的;

内存为主,硬盘为辅;(硬盘备份内存数据,Redis重启了,可以加载硬盘数据到内存)

5)集群,Redis支持集群;

水平拓展,类似于"分库分表",引入多个集群,引入多个Redis缓存;

6)高可用性,重启可恢复数据(硬盘备份)

2.Redis为什么快?

1)内存存储,比硬盘存储的数据库,快很多

2)核心功能都是简单逻辑,简单地操作内存数据结构

3)网络角度,Redis采用了IO多路复用技术(epoll)

4)Redis采用单线程模型,避免线程竞争开销(新版本引入多线程,但针对网络)

多线程高效前提:CPU密集型任务,多线程重复利用CPU资源;

5)(争议)Redis使用C语言开发

3.使用场景

数据库、缓存、消息队列(服务器)

为什么消息队列不适用?

Redis的session storage理解:

HTTP协议是无状态、无连接的,为了保证用户的体验;引入了cookie,后为了安全性引入了session,session是保存在服务器内部的;因此可以用Redis作为缓存进行存储用户的session。

相关推荐
知我Deja_Vu4 天前
redisCommonHelper.generateCode(“GROUP“),Redis 生成码方法
数据库·redis·缓存
Charlie_lll4 天前
Redis脑裂问题处理——基于min-replicas-to-write配置
redis·后端
奇点爆破XC4 天前
Redis迁移
数据库·redis·bootstrap
断手当码农4 天前
Redis 实现分布式锁的三种方式
数据库·redis·分布式
菜鸟小九4 天前
redis原理篇(基本数据结构)
数据结构·数据库·redis
没有bug.的程序员4 天前
电商秒杀系统深度进阶:高并发流量建模、库存零超卖内核与 Redis+MQ 闭环
数据库·redis·缓存·高并发·电商秒杀·流量建模·库存零超卖
菜鸟小九4 天前
redis原理篇(五种数据结构)
数据结构·数据库·redis
初次攀爬者4 天前
Redis分布式锁实现的三种方式-基于setnx,lua脚本和Redisson
redis·分布式·后端
June`4 天前
Redis缓存深度解析:20%数据应对80%请求
数据库·redis
m0_738120724 天前
应急响应——Solar月赛emergency靶场溯源过程(内含靶机下载以及流量分析)
java·开发语言·网络·redis·web安全·系统安全