中间件常见面试题
Posted 神即道,道法自然,如来。
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了中间件常见面试题相关的知识,希望对你有一定的参考价值。
redis如何主从同步?
- 全量复制 通过rdb文件当slave机器连接的时候 master服务器 fork一个子线程 子线程生成一个快照,同步给slave去同步数据
- 增量复制 通过心跳命令去增量同步数据,服务器会维护一个log的内存文件和已经同步的偏移量信息
- 无磁盘复制 通过内存生成文件去复制,不通过磁盘
redis分布式锁注意事项?
redis的哨兵和集群模式?
redis的基本数据结构和底层实现
redis的持久化方案
分布式事务的解决方案?
分布式下redis如何保证线程安全?
单点登录怎么实现?
秒杀系统怎么来实现?
多路复用 IO NIO BIO
布隆过滤器 Bitmap
kafka的架构,如何用kafka保证消息的有序性
kafka和redis的区别
MQ
-
交换机类型
-
消息怎么删除
-
消息队列的使用场景
- 削峰
- 解耦
- 异步
- 广播
- 削峰
-
消息队列什么时候变成死信
- 消息消费的时候被拒绝,没有设置重新进入队列
- 消息过期
- 超过队列长度的时候 第一条消息会变成死信
- 消息消费的时候被拒绝,没有设置重新进入队列
-
多个消费者监听同一个队列,消息怎么分发
- 轮询
- 公平分发
- 比如有的消费时间比较久,占用时长高,这时候可以设置参数 大于多少个的时候不在分发消息
- 轮询
-
无法路由的消息去了哪里?一般被丢弃
-
延迟队列如何实现
-
3.7+ 有一个延迟队列插件
-
TTL + 死信队列 可以通过消息的存活时间和死信队列来实现,指定死信交换机
-
-
-
消息的顺序执行
-
一个队列一个消费者
-
一个队列,然后使用内存队列排队,根据订单id哈希去把同一个订单的发送到同一个队列,然后使用多个线程去消费不同的队列
-
以上是关于中间件常见面试题的主要内容,如果未能解决你的问题,请参考以下文章