云社区 博客 博客详情

面试官心理分析+面试题剖析:消息队列+Redis 缓存+分布式系统等

breezerD 发表于 2020-04-21 18:40:14 2020-04-21
0
0

【摘要】 消息队列1、为什么使用消息队列?消息队列有什么优点和缺点?Kafka、ActiveMQ、RabbitMQ、RocketMQ都有什么优点和缺点?2、如何保证消息队列的高可用?3、如何保证消息不被重复消费?或者说,如何保证消息消费的幂等性?4、如何保证消息的可靠性传输?或者说,如何处理消息丢失的问题?5、如何保证消息的顺序性?6、如何解决消息队列的延时以及过期失效问题?消息队列满了...

消息队列

1、为什么使用消息队列?消息队列有什么优点和缺点?Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什么优点和缺点?

2、如何保证消息队列的高可用?

3、如何保证消息不被重复消费?或者说,如何保证消息消费的幂等性?

4、如何保证消息的可靠性传输?或者说,如何处理消息丢失的问题?

5、 如何保证消息的顺序性?

6、如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?

7、如果让你写一个消息队列,该如何进行架构设计?说一下你的思路。
面试官心理分析+面试题剖析:消息队列+Redis 缓存+分布式系统等

搜索引擎

1、 es 的分布式架构原理能说一下么(es 是如何实现分布式的啊)?

2、 es 写入数据的工作原理是什么啊?es 查询数据的工作原理是什么啊?底层的 lucene 介绍一下呗?倒排索引了解吗?

3、 es 在数据量很大的情况下(数十亿级别)如何提高查询效率啊?

4、 es 生产集群的部署架构是什么?每个索引的数据量大概有多少?每个索引大概有多少个分片?

面试官心理分析+面试题剖析:消息队列+Redis 缓存+分布式系统等

Redis 缓存

1、 项目中缓存是如何使用的?为什么要用缓存?缓存使用不当会造成什么后果?

2、redis 和 memcached 有什么区别?redis 的线程模型是什么?为什么 redis 单线程却能支撑高并发?

3、redis 都有哪些数据类型?分别在哪些场景下使用比较合适?

4、 redis 的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现?

5、如何保证 redis 的高并发和高可用?redis 的主从复制原理能介绍一下么?redis 的哨兵原理能介绍一下么?

6、redis 的持久化有哪几种方式?不同的持久化机制都有什么优缺点?持久化机制具体底层是如何实现的?

7、redis 集群模式的工作原理能说一下么?在集群模式下, redis 的 key 是如何寻址的?分布式寻址都有哪些算法?了解一致性 hash 算法吗?

8、了解什么是 redis 的雪崩、穿透和击穿?redis 崩溃之后会怎么样?系统该如何应对这种情况?如何处理 redis 的穿透?

9、 如何保证缓存与数据库的双写一致性?

10、redis 的并发竞争问题是什么?如何解决这个问题?了解redis 事务的 CAS 方案吗?

11、生产环境中的 redis 是怎么部署的?

面试官心理分析+面试题剖析:消息队列+Redis 缓存+分布式系统等

分库分表

1、 为什么要分库分表(设计高并发系统的时候,数据库层面该如何设计)?用过哪些分库分表中间件?不同的分库分表中间 件都有什么优点和缺点?你们具体是如何对数据库如何进行垂 直拆分或水平拆分的?

2、现在有一个未分库分表的系统,未来要分库分表,如何设计才可以让系统从未分库分表动态切换到分库分表上?

3、如何设计可以动态扩容缩容的分库分表方案?

4、分库分表之后,id 主键如何处理?

面试官心理分析+面试题剖析:消息队列+Redis 缓存+分布式系统等

读写分离

1、你们有没有做 MySQL 读写分离?如何实现 MySQL 的读写分离?MySQL 主从复制原理的是啥?如何解决MySQL 主从同步的延时问题?

2、如何设计一个高并发系统?

面试官心理分析+面试题剖析:消息队列+Redis 缓存+分布式系统等

分布式系统

1、说一下的 dubbo 的工作原理?注册中心挂了可以继续通信吗?说说一次 rpc 请求的流程?

2、dubbo 支持哪些通信协议?支持哪些序列化协议?说一下Hessian 的数据结构?PB 知道吗?为什么 PB 的效率是最高的?

3、 dubbo 负载均衡策略和集群容错策略都有哪些?动态代理策略呢?

4、 dubbo 的 spi 思想是什么?

5、 如何基于 dubbo 进行服务治理、服务降级、失败重试以及超时重试?

6、 分布式服务接口的幂等性如何设计(比如不能重复扣款)?

7、分布式服务接口请求的顺序性如何保证?

8、如何自己设计一个类似 Dubbo 的 RPC 框架?

9、 zookeeper 都有哪些使用场景?

10、 一般实现分布式锁都有哪些方式?使用 redis 如何设计分布式锁?使用 zk 来设计分布式锁可以吗?这两种分布式锁的实现方式哪种效率比较高?

11、 分布式事务了解吗?你们是如何解决分布式事务问题的?

12、集群部署时的分布式 session 如何实现?

面试官心理分析+面试题剖析:消息队列+Redis 缓存+分布式系统等

高可用架构

1、Hystrix 介绍

2、基于 Hystrix 线程池技术实现资源隔离

3、基于 Hystrix 信号量机制实现资源隔离

4、Hystrix 隔离策略细粒度控制

5、基于 request cache 请求缓存技术优化批量商品数据查询接口

6、基于本地缓存的 fallback 降级机制

7、深入 Hystrix 断路器执行原理

8、深入 Hystrix 线程池隔离与接口限流

9、基于 timeout 机制为服务接口调用超时提供安全保护

10、如何限流?在工作中是怎么做的?说一下具体的实现?

11、如何做技术选型?Sentinel 还是 Hystrix?

面试官心理分析+面试题剖析:消息队列+Redis 缓存+分布式系统等

SpringCloud 微服务架构

1、什么是 Spring Cloud?

2、使用 Spring Cloud 有什么优势?

3、服务注册和发现是什么意思?Spring Cloud 如何实现?

4、负载平衡的意义什么?

5、什么是 Hystrix?它如何实现容错?

6、什么是 Hystrix 断路器?我们需要它吗?

7、什么是 Netflix Feign?它的优点是什么?

8、什么是 Spring Cloud Bus?我们需要它吗?

面试官心理分析+面试题剖析:消息队列+Redis 缓存+分布式系统等
什么该说?什么不该说?要回答什么?一个面试,基础知识很重要,揣测面试官的心理也很重要!这份资料将帮到你,金三银四即将结束,疫情也慢慢平缓,未来的日子仍要继续。
面试官心理分析+面试题剖析:消息队列+Redis 缓存+分布式系统等
面试官心理分析+面试题剖析:消息队列+Redis 缓存+分布式系统等

免费获取方式:添加VX:13272413561(备注CTO)

文章来源: blog.51cto.com,作者:wx5d6cccb1cb158,版权归原作者所有,如需转载,请联系作者。

原文链接:https://blog.51cto.com/14528283/2489110

登录后可下载附件,请登录或者注册

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:huaweicloud.bbs@huawei.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
评论文章 //点赞 收藏 0
点赞
分享文章到微博
分享文章到朋友圈

上一篇:浅谈Vector

下一篇:java 计算两个 日期时间 相间隔多少天小时分钟 等

评论 (0)


登录后可评论,请 登录注册

评论