当前位置:首页 > 经验 >

redis入门教程免费(redis 菜鸟教程)

来源:原点资讯(www.yd166.com)时间:2022-10-31 23:04:26作者:YD166手机阅读>>

常用的 SQL 数据库的数据都是存在磁盘中的,虽然在数据库底层也做了对应的缓存来减少数据库的 IO 压力。

redis入门教程免费,redis 菜鸟教程(1)

图片来自 Pexels

由于数据库的缓存一般是针对查询的内容,而且粒度也比较小,一般只有表中的数据没有发生变动的时候,数据库的缓存才会产生作用。

但这并不能减少业务逻辑对数据库的增删改操作的 IO 压力,因此缓存技术应运而生,该技术实现了对热点数据的高速缓存,可以大大缓解后端数据库的压力。

主流应用架构

redis入门教程免费,redis 菜鸟教程(2)

客户端在对数据库发起请求时,先到缓存层查看是否有所需的数据,如果缓存层存有客户端所需的数据,则直接从缓存层返回,否则进行穿透查询,对数据库进行查询。

如果在数据库中查询到该数据,则将该数据回写到缓存层,以便下次客户端再次查询能够直接从缓存层获取数据。

缓存中间件 Memcache 和 Redis 的区别

Memcache 的代码层类似 Hash,特点如下:

  • 支持简单数据类型
  • 不支持数据持久化存储
  • 不支持主从
  • 不支持分片

Redis 特点如下:

  • 数据类型丰富
  • 支持数据磁盘持久化存储
  • 支持主从
  • 支持分片

为什么 Redis 能这么快

Redis 的效率很高,官方给出的数据是 100000 QPS,这是因为:

  • Redis 完全基于内存,绝大部分请求是纯粹的内存操作,执行效率高。
  • Redis 使用单进程单线程模型的(K,V)数据库,将数据存储在内存中,存取均不会受到硬盘 IO 的限制,因此其执行速度极快。

另外单线程也能处理高并发请求,还可以避免频繁上下文切换和锁的竞争,如果想要多核运行也可以启动多个实例。

  • 数据结构简单,对数据操作也简单,Redis 不使用表,不会强制用户对各个关系进行关联,不会有复杂的关系限制,其存储结构就是键值对,类似于 HashMap,HashMap 最大的优点就是存取的时间复杂度为 O(1)。
  • Redis 使用多路 I/O 复用模型,为非阻塞 IO。

注:Redis 采用的 I/O 多路复用函数:epoll/kqueue/evport/select。

选用策略:

  • 因地制宜,优先选择时间复杂度为 O(1) 的 I/O 多路复用函数作为底层实现。
  • 由于 Select 要遍历每一个 IO,所以其时间复杂度为 O(n),通常被作为保底方案。
  • 基于 React 设计模式监听 I/O 事件。

Redis 的数据类型

String

最基本的数据类型,其值最大可存储 512M,二进制安全(Redis 的 String 可以包含任何二进制数据,包含 jpg 对象等)。

redis入门教程免费,redis 菜鸟教程(3)

注:如果重复写入 Key 相同的键值对,后写入的会将之前写入的覆盖。

Hash

String 元素组成的字典,适用于存储对象。

redis入门教程免费,redis 菜鸟教程(4)

栏目热文

redis简单入门和实例(redis使用场景及实例)

redis简单入门和实例(redis使用场景及实例)

原文 :https://www.cnblogs.com/Java3y/p/15921480.html我是3y,一年 CR...

2022-10-31 22:56:49查看全文 >>

香菇肉包素馅(鲜肉香菇包馅的做法)

香菇肉包素馅(鲜肉香菇包馅的做法)

香菇油菜包,一款经典的素菜包,以鲜香而惹人喜爱,以营养丰富健康而被称为是“素馅包子”的代表。上周末带家人去济南,晚上到达...

2022-10-31 23:22:38查看全文 >>

干香菇猪肉包子馅的做法(干香菇猪肉包子馅的做法大全)

干香菇猪肉包子馅的做法(干香菇猪肉包子馅的做法大全)

最近广东的天气也开始冷了,热气腾腾的中式面点大受欢迎!独角兽馒头在家里大受好评!某娃刚吃完馒头就开始预约下一次,因为她平...

2022-10-31 23:20:32查看全文 >>

香菇大肉包子馅做法大全(香菇包子馅要先炒熟吗)

香菇大肉包子馅做法大全(香菇包子馅要先炒熟吗)

哈喽,大家好,我是绿江味道。今天我家孩子想吃包子,我给大家带来了香菇肉包子,听着是不是就流口水?蒸好的香菇肉包子首先准备...

2022-10-31 23:21:01查看全文 >>

香菇猪肉包子馅最简单做法(正宗的香菇包子馅做法)

香菇猪肉包子馅最简单做法(正宗的香菇包子馅做法)

身为北方人的小姿特别爱吃面食,什么面条,大饼,包子,饺子,一周不吃就馋得慌。饺子又是所有面食中最常出现的一种,逢年过节,...

2022-10-31 22:52:33查看全文 >>

redis入门教程超详细(redis详细图解)

redis入门教程超详细(redis详细图解)

【redis是什么】redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数...

2022-10-31 23:27:04查看全文 >>

redis菜鸟教程学习笔记(redis入门教程超详细)

redis菜鸟教程学习笔记(redis入门教程超详细)

一、Redis为什么那么快QPS达到10万/秒用C语言实现基于内存单线程,不用线程上下文切换及加锁二、redis数据类型...

2022-10-31 23:08:58查看全文 >>

redis的正确使用方法(redis的常见使用场景)

redis的正确使用方法(redis的常见使用场景)

redis使用规范建议key命名规范把业务名作为前缀, 然后用冒号分隔,再加上具体的业务数据名比如,存储页面1991的u...

2022-10-31 22:40:31查看全文 >>

redis从零开始教程(redis新手入门知识)

redis从零开始教程(redis新手入门知识)

前言自己在搭建redis服务的时候碰到一些问题,好多人只告诉你怎么成功搭建,但是并没有整理过程中遇到的问题,所有楼主就花...

2022-10-31 23:17:49查看全文 >>

redis详细图解(redis面试必问的三大问题)

redis详细图解(redis面试必问的三大问题)

Redis服务器是一个事件驱动的程序,有以下两类事件:文件事件:Redis服务器通过套接字与客户端或者其他的Redis服...

2022-10-31 23:16:12查看全文 >>

文档排行