Redis 从 2009 年发展到现在,已经被国内外几乎全部公司所使用,国内的 BATJ、新浪微博、360、小米;国外的微软、Twitter、Stack Overflow、Github、暴雪等公司都在使用这个技术栈。

我从业十多年的那些公司,无一例外也都在使用,所以你想成为一名合格的工程师,Redis 是你必须要具备的基础技能,无论是实际工作中还是竞争激烈的面试中,它对你来说都非常的重要。

Redis 之所以如此流行,是因为它的高效性和简洁性,官方提供的 QPS(Query Per Second,每秒查询率)已经超过 10 万了,以下是官方提供的测试结果图:

其中横轴是连接数,纵轴是 QPS,有兴趣的同学可以去尝试一下 Redis 的基准测试程序。

但是除了高性能之外,Redis 还有一个重要的优点,它的版本更新速度很快,并且功能也越来越强大。比如之前只有 5 种数据类型,而到现在已经有 9 种数据类型。

之前最常用的功能是把它作为缓存数据库,而现在你可以使用它来实现消息队列了。

比如之前只能单机模式运行,现在已经发展新增了集群模式运行了;比如之前只能单一模式持久化,选择 RDB 或 AOF,现在已经可以混合持久化模式了,基本实现了鱼和熊掌兼得的境界,特别是集群功能和模块机制的引入,几乎让 Redis 拥有了无限扩展的能力。

这些强大又实用的功能就像一个巨大的宝藏,但对于 90% 的开发者来说,只是掌握了 Redis 最基础的 set 和 get 的方法,这让人感到非常的可惜。

大部分人只会用 Redis 的 Key/Value 功能。

我身边有很多朋友和同事,尽管已经有 5、6 年的工作经验了,但对于 Redis 的掌握仍处在最初级的阶段,比如,当存储一个用户信息时,只会把 User 对象先序列化成字符串,把字符串再存储到 Redis 中,然后查询的时候先从字符串中取出,再反序列化出来。

其实我们完全可以使用 Hash 类型来存储用户信息,这样我们就省去了序列化和反序列化的麻烦,如下图所示:

Redis 还有很多高级功能他们都没有使用到,而这些功能都非常的实用也非常的重要,例如以下这几个:

  1. 主从复制、Redis Sentinel (哨兵) 和 Redis Cluster (集群);

  2. 稳定有消息确认 (ACK) 的消息队列 Stream;

  3. Redis 实现的延迟队列和定时任务;

  4. 亿万级数据查询、以及亿万级数据的秒去重;

  5. Redis 慢查询与性能优化;

  6. Redis 运行原理以及常用数据类型的内部实现。

如果能掌握以上这些技能点,对你开发稳定并高效的程序有着至关重要的作用,同时也能为你成为架构师打好牢固的基础。

另外,Redis 从 2.x 很快速的升级到 6.x 也只经历了短短的几年,但作为开源的高性能中间件的代表,目前在市面上关于它的核心与实战资料并不多,尤其是新版本的 Redis 实战资料。

所以为了让更多的开发朋友能够深入了解和熟练的使用 Redis,我结合自己使用了 9 年 Redis 经验开发了此专栏,希望这个专栏能够担负起让更多开发者更好的使用 Redis 的光荣使命,能让你们能更快速和全面的掌握 Redis 的实际业务场景运用。

扫码了解专栏详情

专栏特点

图文并茂,轻松易学

每篇文章都配有大量的图片示例:

       

类似这样的图,文章里还有很多,力求让大家能轻松的看懂那些很难消化的知识点。

环境搭建 + 使用 + 原理 + 代码实战

所有知识点都是理论 + 实战的方式,例如主从同步、哨兵、Redis 集群等功能都是先讲它们的搭建、再讲它们的运行原理、再结合 Java 代码完成相关的操作,以这个的方式,力求把每一个知识点都讲透,让用户知其然并知其所以然的同时,还能把每个知识点通过实战的方式串联起来,让读者融会贯通的同时还能学有所用。

涉及了几乎所有的 Redis 核心功能

本专栏几乎包含了 Redis 的所有核心知识点,从单机到集群、从基础数据类型到高级特性、有消息队列还有全文搜索、慢查询、性能调优、还有 Redis 本身一些过期策略、内存淘汰策略的机制和算法等。

最高阶版本新特性

专栏内容结合最新版本 Redis 5.x 开发,还有一些 Redis 6.x 的预览特性等,Redis 这几年版本的更新很快,从 2.x 到现在的 6.x (预览版) 也只有短短的几年时间,然而这几年 Redis 的功能以及发生了很大的变化,例如 Redis 3 的集群模式、Redis 4 的混合持久化、Redis 5 的可靠消息队列等,都会包含到本系列的专栏中。

专栏内容

基础篇

  • Redis 是如何执行的?

  • Redis 快速搭建与使用

  • 字符串使用与内部实现原理

  • 字典使用与内部实现原理

  • 列表使用与内部实现原理

  • 集合使用与内部实现原理

  • 有序集合使用与内部实现原理

  • Redis 持久化——RDB

  • Redis 持久化——AOF

  • Redis 持久化——混合持久化

  • Redis 事务深入解析

  • Redis 键值过期操作

  • Redis 过期策略与源码分析

进阶篇

  • Redis 管道技术——Pipeline

  • 查询附近的人——GEO

  • 优秀的基数统计算法——HyperLogLog

  • 游标迭代器(过滤器)——Scan

  • 内存淘汰机制与算法

  • 消息队列——发布订阅模式

  • 消息队列的其他实现方式

  • 消息队列终极解决方案——Stream(上)

  • 消息队列终极解决方案——Stream(下)

实战篇

  • 分布式锁详解与代码实战

  • 布隆过滤器安装与使用及原理分析

  • 实现延迟队列的两种方法—完整案例

  • 定时任务案例实战

  • RediSearch 高性能的全文搜索引擎

  • Redis 性能测试实战

  • Redis 慢查询实战

  • Redis 性能优化实战方案

  • Redis 主从同步实战

  • Redis 哨兵模式实战(上)

  • Redis 哨兵模式实战(下)

  • Redis 集群模式实战(上)

  • Redis 集群模式实战(下)

  • Redis 问题汇总和相关解决方案

  • 技能学习指南

  • 加餐:Redis 的可视化管理工具

作者介绍

王磊 GitChat 畅销作者、2019 年腾讯云最佳年度作者,十余年编程从业经验,曾就职 360,有着丰富的系统设计、开发和调优的经验,在不断探索和学习的过程中,积累了宝贵的经验,希望以技术传播为使命,帮助更多的人在技术的世界里持续精进。

本专栏是我结合自己近十年使用 Redis 的经验,曾依靠 Redis 为多个大厂,如腾讯游戏、360 游戏、迅雷游戏、多玩、17173、游久等知名公司,提供了数据支持的经验开发了这门专栏。

学习后你将可以获得

• 超越 90% 的开发者掌握 Redis 最核心的功能原理

• 更多贴近业务所需的 Redis 实战应用经验

• 掌握最高阶版 Redis 的特性和执行原理

• 更快速排查 Redis 故障的能力

• 获得 Redis 分布式集群使用经验

最后,专栏上新正在特价中,一起来快速全面掌握 Redis 的实际业务场景运用吧~

千万不要好奇 Redis 的宝藏功能相关推荐

  1. php redis 实现点赞,使用redis实现点赞功能的几种思路

    原标题:使用redis实现点赞功能的几种思路 本文主要介绍本人工作中遇到的点赞需求以及使用redis的解决思路.第一种点赞需求是比较常规的点赞需求,类似于微博那种点赞模式,用户可以对某条信息点赞.取消 ...

  2. Redis的各项功能解决了哪些问题?

    Redis的各项功能解决了哪些问题? 参考文章: (1)Redis的各项功能解决了哪些问题? (2)https://www.cnblogs.com/linianhui/p/what-problem-d ...

  3. redis stream持久化_Beetlex.Redis之Stream功能详解

    原标题:Beetlex.Redis之Stream功能详解 有一段时间没有写文章,techempower的测试规则评分竟然发生了变化,只能忘着补充一下占比权重最多的数据更新示例了和深入设计一下组件模块化 ...

  4. Redis 的各项功能解决了哪些问题?

    先看一下Redis是一个什么东西 官方简介解释到:Redis是一个基于BSD开源的项目,是一个把结构化的数据放在内存中的一个存储系统,你可以把它作为数据库,缓存和消息中间件来使用.同时支持string ...

  5. Redis 的各项功能到底解决了哪些问题?

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达今日推荐:2020年7月程序员工资统计,平均14357元,又跌了,扎心个人原创100W+访问量博客:点击前往,查看更多 来源 ...

  6. Beetlex.Redis之Stream功能详解

    有一段时间没有写文章,techempower的测试规则评分竟然发生了变化,只能忘着补充一下占比权重最多的数据更新示例了和深入设计一下组件模块化加载的设计.但在不久前有用户问了一下组件是否支持redis ...

  7. Redis多机功能介绍

    Redis多机功能目的:以单台Redis服务器过渡到多台Redis服务器 Redis单机在生产环境中存在的问题 1.内存容量不足 Redis使用内存来存书数据库中的数据,但是对于一台机器来说,硬件的内 ...

  8. redis rua解决库存问题_【150期】面试官:Redis的各项功能解决了哪些问题?

    点击上方"Java面试题精选",关注公众号 面试刷图,查缺补漏 >>号外:往期面试题,10篇为一个单位归置到本公众号菜单栏->面试题,有需要的欢迎翻阅 阶段汇总集 ...

  9. 基于redis实现抢红包功能(包括余额退回处理)

    本文将讲述使用redis实现抢红包功能,采用发红包时将红包拆好存储,解决红包金额平衡问题(两种算法).解决超发现象.将数据通过消息队列传递给另一个服务写入数据库,现阶段不考虑redis宕机的情况. - ...

最新文章

  1. Redis - Redis command timed out nested exception is io.lettuce.core.RedisCommandTimeoutException
  2. mysql插入10万测试_[原创]java使用JDBC向MySQL数据库批次插入10W条数据测试效率
  3. 【mac】iTerm2中ssh保持连接不断开
  4. 实验三十三、标准访问控制列表的配置
  5. 网站java验证码不显示_jsp验证码无法显示
  6. ES3,ES5,ES6的区别
  7. 面试中的Singleton
  8. SQL中EXPLAIN命令详解
  9. 前端开发:Promise的使用丨蓄力计划
  10. 手机上怎么录制斗鱼直播视频,直播视频怎么录制
  11. 修改hosts不管用。为什么修改127.0.0.1指向的域名,访问域名却弹出别的网站
  12. spring-boot 2.5.6 问题:WARN: This connection is using TLSv1.1
  13. 关于测试中常用到的一些方法、策略总结
  14. 点到超平面的距离公式
  15. 高位字节与低位字节简单介绍
  16. 【mysql】ACID靠什么保证的?
  17. bzoj4399 魔法少女LJJ 线段树合并
  18. 使用Python+Opencv+Flask将windows端的摄像头变为网络摄像头的方法
  19. FCOS目标检测 paper笔记
  20. 奥特曼传奇英雄存档丢了怎么找回_奥特曼传奇英雄存档

热门文章

  1. 帝国CMS7.5仿完美游戏台游戏视频网站模板
  2. 面包板搭三极管作开关控制负载(发光二极管)的亮灭DIY
  3. STC16f40k128——PWM
  4. java document解析xml_[XML]在Java中用Document解析XML实例
  5. 温度上升超过1.5度多可怕?欧洲氢能路线图:“从头干”
  6. 《华中科技大学公开课:哲学导论》 摘抄
  7. 蛙泳的动作教学口诀(转自新浪博客)
  8. OpenSSL3.0.1中SM4算法分析
  9. 基于opencv的车道线识别(python)(极易实现)
  10. edushi flex