Redis相关
JavaBoy_XJ
万般皆苦,唯有自渡!
展开
-
Redis 分布式缓存 Java 框架
为什么要在 Java 分布式应用程序中使用缓存?在提高应用程序速度和性能上,每一毫秒都很重要。根据谷歌的一项研究,假如一个网站在3秒钟或更短时间内没有加载成功,会有 53% 的手机用户会离开。缓存是让分布式应用程序加速的重要技术之一。存储的信息越接近 CPU,访问速度就越快。从 CPU 缓存中加载数据比从 RAM 中加载要快得多,比从硬盘或网络上加载要快得多得多。要存储经常访问的数据,分布式...转载 2019-02-22 11:36:23 · 582 阅读 · 0 评论 -
redis 都有哪些数据类型?
面试题redis 都有哪些数据类型?分别在哪些场景下使用比较合适?面试官心理分析除非是面试官感觉看你简历,是工作 3 年以内的比较初级的同学,可能对技术没有很深入的研究,面试官才会问这类问题。否则,在宝贵的面试时间里,面试官实在不想多问。其实问这个问题,主要有两个原因:看看你到底有没有全面的了解 redis 有哪些功能,一般怎么来用,啥场景用什么,就怕你别就会最简单的 KV 操作;看...转载 2019-08-12 09:55:20 · 709 阅读 · 1 评论 -
redis 和 memcached 有什么区别?redis 的线程模型是什么?为什么 redis 单线程却能支撑高并发?
面试题redis 和 memcached 有什么区别?redis 的线程模型是什么?为什么 redis 单线程却能支撑高并发?面试官心理分析这个是问 redis 的时候,最基本的问题吧,redis 最基本的一个内部原理和特点,就是 redis 实际上是个单线程工作模型,你要是这个都不知道,那后面玩儿 redis 的时候,出了问题岂不是什么都不知道?还有可能面试官会问问你 redis 和 m...转载 2019-08-12 09:41:53 · 98 阅读 · 0 评论 -
redis 的持久化有哪几种方式?不同的持久化机制都有什么优缺点?持久化机制具体底层是如何实现的?
面试题redis 的持久化有哪几种方式?不同的持久化机制都有什么优缺点?持久化机制具体底层是如何实现的?面试官心理分析redis 如果仅仅只是将数据缓存在内存里面,如果 redis 宕机了再重启,内存里的数据就全部都弄丢了啊。你必须得用 redis 的持久化机制,将数据写入内存的同时,异步的慢慢的将数据写入磁盘文件里,进行持久化。如果 redis 宕机重启,自动从磁盘上加载之前持久化的一些...转载 2019-08-15 14:57:51 · 126 阅读 · 0 评论 -
缓存并发竞争问题是什么?
面试题redis 的并发竞争问题是什么?如何解决这个问题?了解 redis 事务的 CAS 方案吗?面试官心理分析这个也是线上非常常见的一个问题,就是多客户端同时并发写一个 key,可能本来应该先到的数据后到了,导致数据版本错了;或者是多客户端同时获取一个 key,修改值之后再写回去,只要顺序错了,数据就错了。而且 redis 自己就有天然解决这个问题的 CAS 类的乐观锁方案。面试题剖...转载 2019-08-07 21:32:41 · 2047 阅读 · 0 评论 -
项目中缓存是如何使用的?为什么要用缓存?缓存使用不当会造成什么后果?
面试题项目中缓存是如何使用的?为什么要用缓存?缓存使用不当会造成什么后果?面试官心理分析这个问题,互联网公司必问,要是一个人连缓存都不太清楚,那确实比较尴尬。只要问到缓存,上来第一个问题,肯定是先问问你项目哪里用了缓存?为啥要用?不用行不行?如果用了以后可能会有什么不良的后果?这就是看看你对缓存这个东西背后有没有思考,如果你就是傻乎乎的瞎用,没法给面试官一个合理的解答,那面试官对你印象肯...转载 2019-08-07 21:17:07 · 929 阅读 · 0 评论 -
如何保证缓存与数据库的双写一致性?
面试题如何保证缓存与数据库的双写一致性?面试官心理分析你只要用缓存,就可能会涉及到缓存与数据库双存储双写,你只要是双写,就一定会有数据一致性的问题,那么你如何解决一致性问题?面试题剖析一般来说,如果允许缓存可以稍微的跟数据库偶尔有不一致的情况,也就是说如果你的系统不是严格要求 “缓存+数据库” 必须保持一致性的话,最好不要做这个方案,即:读请求和写请求串行化,串到一个内存队列里去。串行...转载 2019-08-07 21:24:55 · 236 阅读 · 1 评论 -
redis 的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现?
面试题redis 的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现?面试官心理分析如果你连这个问题都不知道,上来就懵了,回答不出来,那线上你写代码的时候,想当然的认为写进 redis 的数据就一定会存在,后面导致系统各种 bug,谁来负责?常见的有两个问题:往 redis 写入的数据怎么没了?可能有同学会遇到,在生产环境的 redis 经常会丢掉一些数据,写进去...转载 2019-08-14 11:12:06 · 118 阅读 · 0 评论 -
Redis分布式锁如何续期
Redis分布式锁的正确姿势据肥朝了解,很多同学在用分布式锁时,都是直接百度搜索找一个Redis分布式锁工具类就直接用了.关键是该工具类中还充斥着很多System.out.println();等语句.其实Redis分布式锁比较正确的姿势是采用redisson这个客户端工具.具体介绍可以搜索最大的同性交友网站github.如何回答首先如果你之前用Redis的分布式锁的姿势正确,并且看过相应的官...转载 2019-06-26 10:49:59 · 8640 阅读 · 0 评论 -
缓存穿透、缓存击穿、缓存雪崩
缓存穿透什么是缓存穿透正常情况下,查询的数据都存在,如果请求一个不存在的数据,也就是缓存和数据库都查不到这个数据,每次都会去数据库查询,这种查询不存在数据的现象我们称为缓存穿透穿透带来的问题如果每次都拿一个不存在的id去查询数据库,可能会导致你的数据库压力增大解决办法1.缓存空值之所以发生穿透,是因为缓存中没有存储这些数据的key,从而每次都查询数据库我们可以为这些key在缓存中设...转载 2019-04-10 17:35:58 · 202 阅读 · 1 评论 -
Redis(5.0)集群分析
1、为了达到redis数据库的高可用,所以需要在单机的基础上建立集群,首先了解下它的集群模式,大概有以下几种:主从复制哨兵模式Redis官方提供的Cluster集群模式(服务端)Jedis sharding集群(客户端sharding)利用中间件代理,比如豌豆荚的codis等2、简单分析一下原理以及优缺点2.1、主从复制(Master-Slave Replication):主从...转载 2019-03-20 15:20:54 · 944 阅读 · 1 评论 -
redis简单封装和使用
1、准备工作项目中引入jar包,maven的方式<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></dependency>配置文件配...原创 2019-02-14 10:59:28 · 850 阅读 · 0 评论 -
了解什么是 redis 的雪崩、穿透和击穿?redis 崩溃之后会怎么样?系统该如何应对这种情况?如何处理 redis 的穿透?
面试题了解什么是 redis 的雪崩、穿透和击穿?redis 崩溃之后会怎么样?系统该如何应对这种情况?如何处理 redis 的穿透?面试官心理分析其实这是问到缓存必问的,因为缓存雪崩和穿透,是缓存最大的两个问题,要么不出现,一旦出现就是致命性的问题,所以面试官一定会问你。面试题剖析缓存雪崩对于系统 A,假设每天高峰期每秒 5000 个请求,本来缓存在高峰期可以扛住每秒 4000 个请...转载 2019-08-17 10:14:02 · 204 阅读 · 0 评论