Redis
文章平均质量分 94
徐刘根
微信关注公众号:Java后端技术(ID:JavaITWork),和20万人一起学习Java!
"Java后端技术"微信公众号专注Java相关技术:SSM、Spring全家桶、微服务、MySQL、MyCat、集群、分布式、中间件、Linux、网络、多线程,偶尔讲点运维Jenkins、Nexus、Docker、ELK,偶尔分享些技术干货,致力于Java全栈开发!
展开
-
高并发和海量数据下的 9 个 Redis 经典案例剖析!
往期热门文章:1、《往期精选优秀博文都在这里了!》2、人见人爱!收款码背后的原理是什么?3、这么设计,Redis 10亿数据量只需要100MB内存4、当Docker遇到Intellij IDEA,再次解放了生产力~5、闲鱼靠什么支撑起万亿的交易规模?本文来源:码洞业务背景这次分享主要是围绕 Redis,分享在平时的日常业务开发中遇到的 9 个经典案例,希望通过此次分享可以帮助大家更好的将 Redis 的高级特性应用到日常的业务开发中来。首先介绍一下业务背景:总用户量大概.转载 2020-10-09 16:06:21 · 1839 阅读 · 0 评论 -
20万用户同时访问一个热点Key,如何优化缓存架构?
来源:石杉的架构笔记(ID:shishan100)这篇文章,咱们来聊聊热点缓存的架构优化问题。使用缓存集群的时候,最怕的就是热 Key、大 Value 这两种情况。一、为什么要用缓存集群啥叫热 Key 和大 Value 呢?简单来说,热 Key,就是你的缓存集群中的某个 Key 瞬间被数万甚至十万的并发请求打爆。大 Value,就是你的某个 Key 对应的 Value 可能有 GB ...转载 2019-06-02 11:48:51 · 1729 阅读 · 0 评论 -
如何正确访问Redis中的海量数据?服务才不会挂掉!
作者:享学课堂老顾微信公众号: 享学课堂online一、前言有时候我们需要知道线上的Redis的使用情况,尤其需要知道一些前缀的key值,让我们怎么去查看呢?并且通常情况下Redis里的数据都是海量的,那么我们访问Redis中的海量数据?如何避免事故产生!今天就给大家分享一个小知识点,希望大家轻喷。二、事故产生因为我们的用户token缓存是采用了【user_token:userid】...转载 2019-06-05 15:35:40 · 2461 阅读 · 1 评论 -
分布式之数据库和缓存双写一致性方案解析!
作者:孤独烟出处:http://rjzheng.cnblogs.com一、为什么写这篇文章?首先,缓存由于其高并发和高性能的特性,已经在项目中被广泛使用。在读取缓存方面,大家没啥疑问,都是按照下图的流程来进行业务操作:但是在更新缓存方面,对于更新完数据库,是更新缓存呢,还是删除缓存?又或者是先删除缓存,再更新数据库?其实大家存在很大的争议。目前没有一篇全面的博客,对这几种方案进...转载 2018-05-21 10:55:36 · 12612 阅读 · 11 评论 -
Redis实战和核心原理详解(9)RDB和AOF的优缺点对比以及如何选择
一、RDB的优缺点1.1、RDB的优点(1)RDB文件是紧凑的二进制文件,比较适合做冷备,全量复制的场景。RDB做会生成多个文件,每个文件都代表了某一个时刻的Redis完整的数据快照;RDB这种多个数据文件的方式,非常适合做冷备,因为大量的一个个的文件,可以每隔一定的时间,复制出来;可以将这种完整的数据文件发送到一些远程的云服务、分布式存储上进行安全的存储,以预定好的备份策略来定期备份...原创 2019-04-11 14:16:41 · 4804 阅读 · 5 评论 -
Redis实战和核心原理详解(1)Centos7.0下安装Redis 5.0详细过程和使用常见问题
一、系统环境1.1、服务器环境序号节点名称(hostname)服务器版本Linux版本IP地址1node1CentOS Linux release 7.3.1611 (Core)Linux version 3.10.0-514.el7.x86_64192.168.1.512node2CentOS Linux release 7.3.1611 (Cor...原创 2019-04-10 16:48:21 · 3830 阅读 · 0 评论 -
什么是一致性Hash算法?
最近有小伙伴跑过来问什么是Hash一致性算法,说面试的时候被问到了,因为不了解,所以就没有回答上,问我有没有相应的学习资料推荐,当时上班,没时间回复,晚上回去了就忘了这件事,今天突然看到这个,加班为大家整理一下什么是Hash一致性算法,希望对大家有帮助!经常阅读我文章的小伙伴应该都很熟悉我写文章的套路,上来就是先要问一句为什么?也就是为什么要有Hash一致性算法?就像以前介绍为什么要有Spri...原创 2018-03-13 21:15:32 · 18321 阅读 · 10 评论 -
缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题
前面一节说到了《为什么说Redis是单线程的以及Redis为什么这么快!》,今天给大家整理一篇关于Redis经常被问到的问题:缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等概念的入门及简单解决方案。一、缓存雪崩缓存雪崩我们可以简单的理解为:由于原有缓存失效,新缓存未到期间(例如:我们设置缓存时采用了相同的过期时间,在同一时刻出现大面积的缓存过期),所有原本应该访问缓存的请求都去查询...原创 2018-03-12 20:09:10 · 42606 阅读 · 12 评论 -
为什么说Redis是单线程的以及Redis为什么这么快!
一、前言近乎所有与Java相关的面试都会问到缓存的问题,基础一点的会问到什么是“二八定律”、什么是“热数据和冷数据”,复杂一点的会问到缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题,这些看似不常见的概念,都与我们的缓存服务器相关,一般常用的缓存服务器有Redis、Memcached等,而笔者目前最常用的也只有Redis这一种。如果你在以前面试的时候还没有遇到过面试官问你《为什么说R...原创 2018-03-07 17:39:56 · 89510 阅读 · 31 评论 -
Redis实战和核心原理详解(4)Redis存储Key的一种设计实现方式:模式匹配
一、前言Redis是Key-Value数据库,存储的时候需要一个唯一的Key值,查询的时候根据根据key值进行查询,但是Redis毕竟只是key-value存储,所以有很多局限性。例如:(1)无法实现多条件组合的查询,如: age > 25 AND name like 'A%'硬要实现的话需要多条命令并计算并集或交集。(2)模糊查询中文比较费劲;因此,如何设计一个合适的Key来优化我们的查询操作,是原创 2017-06-19 21:54:56 · 82139 阅读 · 3 评论 -
Redis实战和核心原理详解(8)使用快照RDB和AOF将Redis数据持久化到硬盘中
前言我们知道Redis是一款内存服务器,就算我们对自己的服务器足够的信任,不会出现任何软件或者硬件的故障,但也会有可能出现突然断电等情况,造成Redis服务器中的数据失效。因此,我们需要向传统的关系型数据库一样对数据进行备份,将Redis在内存中的数据持久化到硬盘等非易失性介质中,来保证数据的可靠性。将Redis内存服务器中的数据持久化到硬盘等介质中的一个好处就是,使得我们的服务器在重启之后还可以重原创 2017-03-13 21:49:13 · 11464 阅读 · 1 评论 -
Redis实战和核心原理详解(2)Redis简介以及和其他缓存数据库的区别
相关文章:Centos7.0 安装Redis 3.2.1详细过程和使用常见问题Redis简介Redis 是一个开源的内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如字符串(Strings),散列(Hashes),列表(Lists),集合(Sets),有序集合(Sorted Sets或者是ZSet) 与范围查询, Bitmaps,Hyperloglogs 和原创 2017-03-07 14:27:54 · 22337 阅读 · 2 评论 -
Redis实战和核心原理详解(3)Redis常见的5种不同的数据类型详解
相关文章:Redis简介以及和其他缓存数据库的区别前言Redis除了可以存储键还可以存储常见的5种数据类型,分别是:String、List、Set、Hash、ZSet。对于Redis的命令有一部分是可以公用的,但是还有一些其他的命令是属于特殊使用的。首先看看一张关于Redis5种数据结构的对比:下边就分别介绍5中国不同的数据结构类型。String字符串类型Redis中的String类型就是一个由字节原创 2017-03-09 17:11:21 · 24549 阅读 · 1 评论 -
Redis实战和核心原理详解(7)Spring Session解决分布式Session问题的实现原理
上一篇:使用Spring Session和Redis解决分布式Session跨域共享问题 : http://blog.csdn.net/xlgen157387/article/details/57406162上一篇介绍了如何使用Spring Session和Redis解决分布式Session跨域共享问题,介绍了一个简单的案例,下边就学习一下Spring Session的实现原理。注:以下步骤是基于原创 2017-03-04 11:48:06 · 33685 阅读 · 11 评论 -
Redis实战和核心原理详解(6)使用Spring Session和Redis解决分布式Session跨域共享问题
前言对于分布式使用Nginx+Tomcat实现负载均衡,最常用的均衡算法有IP_Hash、轮训、根据权重、随机等。不管对于哪一种负载均衡算法,由于Nginx对不同的请求分发到某一个Tomcat,Tomcat在运行的时候分别是不同的容器里,因此会出现session不同步或者丢失的问题。实际上实现Session共享的方案很多,其中一种常用的就是使用Tomcat、Jetty等服务器提供的Session共享原创 2017-02-26 16:01:19 · 70297 阅读 · 32 评论 -
Redis实战和核心原理详解(5)使用Redis存储Nginx+Tomcat负载均衡集群的Session
环境:Cent OS 7.0(虚拟机环境)、Nginx 1.9.8、Redis 3.2.1一、背景在使用Nginx+Tomcat实现负载均衡的时候,由于Nginx对不同的请求分发到某一个Tomcat,Tomcat在运行的时候分别是不同的容器里,因为会出现session不同步或者丢失的问题。二、Nginx安装与配置1、Nginx安装网上的资源对于安装Nginx的介绍比较多,例如最简单的为:(1) 获取原创 2016-07-25 17:26:04 · 32052 阅读 · 20 评论 -
Centos7.0 安装Redis 3.2.1详细过程和使用常见问题
环境:Cent OS 7.0 Redis 3.2.1 Redis的安装与启动这里我把Redis放在/home/xuliugen/software/下,所以在该目录下执行下列命令:$ wget http://download.redis.io/releases/redis-3.2.1.tar.gz$ tar xzf redis-3.2.1.tar.gz$ cd redis-3.2.1$ m原创 2016-07-25 14:14:39 · 10540 阅读 · 1 评论