redis的入门/原理/实战大总结

举报
兔老大 发表于 2021/04/26 00:40:58 2021/04/26
【摘要】 入门 Redis是一款基于键值对的NoSQL数据库,它的值支持多种数据结构: 字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)等。 • Redis将所有的数据都存放在内存中,所以它的读写性能十分惊人,用作数据库,缓存和消息代理。 Redis具有内置的复制,Lua脚本,LRU逐出,事务和不同级别的磁盘持...

入门

Redis是一款基于键值对的NoSQL数据库,它的值支持多种数据结构:
字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)等。
• Redis将所有的数据都存放在内存中,所以它的读写性能十分惊人,用作数据库,缓存和消息代理。

Redis具有内置的复制,Lua脚本,LRU逐出,事务和不同级别的磁盘持久性,并通过Redis Sentinel和Redis Cluster自动分区提供了高可用性。
• Redis典型的应用场景包括:缓存、排行榜、计数器、社交网络、消息队列等

NOSQL及redis概述

但是我们实战之前,还是要了解基本使用

数据结构和对象的使用介绍

Java整合

 

原理总结

这部分在我看来是最有意思的,我们有必要了解底层数据结构的实现,这也是我最感兴趣的。

比如,你知道redis中的字符串怎么实现的吗?为什么这么实现?

你知道redis压缩列表是什么算法吗?

你知道redis为什么抛弃了红黑树反而采用了跳表这种新的数据结构吗?

你知道hyperloglog为什么用如此小的空间就可以有这么好的统计性能和准确性吗?

你知道布隆过滤器为什么这么有效吗?有没有数学证明过?

你是否还能很快写出来快排?或者不断优化性能的排序?是不是只会调库了甚至库函数怎么实现的都不知道?真的就是快排?

包括数据库,持久化,处理事件、客户端服务端、事务的实现、发布和订阅等功能的实现,也需要了解。

另外,

数据结构(字典、链表、字符串)

数据结构(整数集合,压缩列表)

数据结构(跳表介绍和手撕)

为什么选择了跳表而不是红黑树?

HyperLogLog

LRU介绍和实现

Redis中的LRU算法改进

布隆过滤器

qsort源码

对象(字符串对象、列表对象、哈希对象、集合对象、有序集合总结)

内存管理

数据库简介

数据持久化

事件

客户端

命令的执行过程

事务

发布和订阅

多机

旧版复制

新版复制

哨兵机制

 

实战

 

进一步的了解了redis的使用和原理,我们来写一些简单的实战代码

实战点赞

实战关注

缓存击穿/穿透/雪崩

对项目的一些优化方案

RedLock

更多的细节问题

 

相关问题汇总

 

文章来源: fantianzuo.blog.csdn.net,作者:兔老大RabbitMQ,版权归原作者所有,如需转载,请联系作者。

原文链接:fantianzuo.blog.csdn.net/article/details/102924200

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。