Redis 基本认识

文章目录

Redis八个特性

  1. 速度快

    原因:

    ① 单线程,避免了多线程竞争(如加锁/解锁)的时间开销

    ② redis的数据存放在内存中

    ③ 使用C语言编写,C语言更方便操做硬件

    ④ Redis 源码优秀

  2. 利用键值对存储数据

    Redis 利用Key = Value的形式构建储数据,Redis有五种基础的数据结构,它们分别为:字符串(string)、哈希(hash)、列表(list)、集合(set)、有序集合(ordered set /zet ) , 并在这些基础的数据结构之上演变出了其他类型 。

  3. 客户端语言种类多

  4. 支持持久化

    将内存中的数据存储到外存中

  5. 支持主从复制

  6. 简单稳定

    Redis 本身代码量相对少,故客户端开发、功能开发相对容易, 出现漏洞的可能性低 。

  7. 支持分布式 ,提高了可用性

  8. 其他功能丰富

    ①提供了键过期功能,可以⽤来实现缓存。

    ②提供了发布订阅功能,可以⽤来实现消息系统。

    ③⽀持 Lua 脚本功能,可以利⽤ Lua 创造出新的 Redis 命令。

    ④提供了简单的事务功能,能在⼀定程度上保证事务特性。

    ⑤提供了流⽔线(Pipeline)功能,这样客⼾端能将⼀批命令⼀次性传到 Redis,减少了⽹络的开

    销。

Redis应用场景

  1. 网络数据缓存
  2. 实时计数器
  3. 消息队列
  4. 排行榜系统

Redis应用缺陷

同大小的内存与外存,内存更贵,Redis数据存储在内存中,故Redis不适合存放冷数据的应用场景

冷数据:不被用户经常访问的数据

热数据: 经常被用户访问的数据

Redis使用流程

Redis本身是一个网络服务,程序/程序员在Redis增删查改数据是通过客户端来实现的,这点和MySQL相似。

相关推荐
小五Z14 分钟前
Redis--事务
redis·分布式·后端·缓存
XXYBMOOO26 分钟前
基于 Qt 的 BMP 图像数据存取至 SQLite 数据库的实现
数据库·c++·qt
Sunlight_7771 小时前
第五章 SQLite数据库:1、SQLite 基础语法及使用案例
java·linux·服务器·jvm·数据库·tcp/ip·sqlite
JhonKI1 小时前
【从零实现高并发内存池】内存池整体框架设计 及 thread cache实现
java·redis·缓存
嘉嘉king1 小时前
Mysql联表查询
数据库
镜舟科技2 小时前
NoSQL 与 NewSQL 全面对比:如何选择适合你的数据库方案?
数据库·starrocks·nosql·newsql·技术架构·实时数据分析
TDengine (老段)2 小时前
TDengine 语言连接器(Node.js)
大数据·c语言·数据库·物联网·node.js·时序数据库·tdengine
洛神灬殇2 小时前
【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 时间事件处理部分)
redis·后端
Sunlight_7772 小时前
第五章 SQLite数据库:3、SQLite 常用语法及使用案例
jvm·数据库·sqlite
数据库砖家3 小时前
YashanDB|虚拟内存高出实际内存十几G?原因不只是“占用大”这么简单
数据库