高并发架构消息队列面试题解析
面试题
- 为什么使用消息队列?
- 消息队列有什么优点和缺点?
- Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什么区别,以及适合哪些场景?
面试官心理分析
- 第一,你知不知道你们系统里为什么要用消息队列这个东西? 不少候选人,说自己项目里用了 Redis、MQ,但是其实他并不知道自己为什么要用这个东西。其实说白了,就是为了用而用,或者是别人设计的架构,他从头到尾都没思考过。 没有对自己的架构问过为什么的人,一定是平时没有思考的人,面试官对这类候选人印象通常很不好。因为面试官担心你进了团队之后只会木头木脑的干呆活儿,不会自己思考。
- 第二,你既然用了消息队列这个东西,你知不知道用了有什么好处&坏处? 你要是没考虑过这个,那你盲目弄个 MQ 进系统里,后面出了问题你是不是就自己溜了给公司留坑?你要是没考虑过引入一个技术可能存在的弊端和风险,面试官把这类候选人招进来了,基本可能就是挖坑型选手。就怕你干 1 年挖一堆坑,自己跳槽了,给公司留下无穷后患。
- 第三,既然你用了 MQ,可能是某一种 MQ,那么你当时做没做过调研? 你别傻乎乎的自己拍脑袋看个人喜好就瞎用了一个 MQ,比如 Kafka,甚至都从没调研过业界流行的 MQ 到底有哪几种。每一个 MQ 的优点和缺点是什么。每一个 MQ 没有绝对的好坏,但是就是看用在哪个场景可以扬长避短,利用其优势,规避其劣势。 如果是一个不考虑技术选型的候选人招进了团队,leader 交给他一个任务,去设计个什么系统,他在里面用一些技术,可能都没考虑过选型,最后选的技术可能并不一定合适,一样是留坑。
面试题剖析
为什么使用消息队列
解耦
异步
削峰
消息队列有什么优缺点
- 系统可用性降低 系统引入的外部依赖越多,越容易挂掉。本来你就是 A 系统调用 BCD 三个系统的接口就好了,人 ABCD 四个系统好好的,没啥问题,你偏加个 MQ 进来,万一 MQ 挂了咋整,MQ 一挂,整套系统崩溃的,你不就完了?
- 系统复杂度提高 硬生生加个 MQ 进来,你怎么保证消息没有重复消费?怎么处理消息丢失的情况?怎么保证消息传递的顺序性?头大头大,问题一大堆,痛苦不已。
- 一致性问题 A 系统处理完了直接返回成功了,人都以为你这个请求就成功了;但是问题是,要是 BCD 三个系统那里,BD 两个系统写库成功了,结果 C 系统写库失败了,咋整?你这数据就不一致了。
免费Java资料需要自己领取,涵盖了Java、Redis、MongoDB、MySQL、Zookeeper、Spring Cloud、Dubbo/Kafka、Hadoop、Hbase、Flink等高并发分布式、大数据、机器学习等技术。 传送门:mp.weixin.qq.com/s/JzddfH-7y…
高并发架构消息队列面试题解析相关推荐
- 队列处理高并发_高并发架构消息队列面试题解析
面试题 为什么使用消息队列? 消息队列有什么优点和缺点? Kafka.ActiveMQ.RabbitMQ.RocketMQ 都有什么区别,以及适合哪些场景? 面试官心理分析 其实面试官主要是想看看: ...
- 高并发架构系列:MQ消息队列的12点核心原理总结
2019独角兽企业重金招聘Python工程师标准>>> 消息队列已经逐渐成为分布式应用场景.内部通信.以及秒杀等高并发业务场景的核心手段,它具有低耦合.可靠投递.广播.流量控制.最终 ...
- 支付宝架构师眼中的高并发架构
点击上方"方志朋",选择"置顶或者星标" 你的关注意义重大! 来源:my.oschina.net/u/3772106/blog/1793561 前言 高并发经常 ...
- 大神级教程!300分钟撸一个基于Redis 6.0 版本的高并发架构
刚好原先公司搞职位调整,我不太满意,赶上这波金三银四的面试浪潮,干了也有5年的后端开发了,不是大神也是有实战经验的,我就自信满满地去面了几家大厂,结果就遇到... 面试官这夺命连环12问,谁顶得住? ...
- 干货:从零设计高并发架构
前言 高并发经常会发生在有大活跃用户量,用户高聚集的业务场景中,如:秒杀活动,定时领取红包等. 为了让业务可以流畅的运行并且给用户一个好的交互体验,我们需要根据业务场景预估达到的并发量等因素,来设计适 ...
- 如何从零设计一款高并发架构(建议收藏)
来源:http://blog.thankbabe.com 高并发经常会发生在有大活跃用户量,用户高聚集的业务场景中,如:秒杀活动,定时领取红包等. 为了让业务可以流畅的运行并且给用户一个好的交互体验, ...
- 聊聊高并发系统之队列术
from: http://geek.csdn.net/news/detail/100577 声明:本位来自京东张开涛的微信公众号(kaitao-1234567),授权CSDN转载,如需转载请联系作者. ...
- 支付宝架构师眼里的高并发架构
http://blog.csdn.net/sinat_41559116/article/details/79076063 前言 高并发经常会发生在有大活跃用户量,用户高聚集的业务场景中,如:秒杀活动, ...
- 架构师眼中的高并发架构
00 前言 高并发经常会发生在有大活跃用户量,用户高聚集的业务场景中,如:秒杀活动,定时领取红包等. 为了让业务可以流畅的运行并且给用户一个好的交互体验,我们需要根据业务场景预估达到的并发量等因 ...
- 电商那些年,我摸爬打滚出的高并发架构实战精髓(续)
一.分层,分割,分布式 大型网站要很好地支撑高并发,需要长期的规划设计.在初期,需要把系统进行分层,在发展过程中把核心业务进行拆分成模块单元,根据需求进行分布式部署,可以进行独立团队维护开发. 分层: ...
最新文章
- 零基础 ABAP 学习教程系列文章的目录
- 怎么在linux的cmd中运行c项目,如何在cmd窗口编译运行c语言程序?
- AtCoder Regular Contest 061
- “遗留代码是传奇!”
- 喝杯咖啡,就买不到NIPS门票了!11分38秒售罄
- 如何正确认识大数据技术
- Luogu4402 机械排序
- Linux系统如何安装不知名称的软件?
- android消息发送字符串,Android aSmack-如何对文件发送进行自定义消息...
- 计算机ck,CKplayer
- unity 3d实例:创建游戏对象、旋转的立方体、Unity3D Button、图片按钮、Box控件、Label控件、Background Color、Color
- 【历史上的今天】11 月 21 日:第一个阿帕网连接建立;乐视网成立;爱迪生发明留声机
- 害怕字体侵权?可以免费商用的字体库来了!
- 闲鱼卖货,月入1.5w的小众类目分享。
- Android绘制波浪线
- C语言 学生管理系统 c++ 学生管理系统
- Nginx 代理本地文件
- 小明一家过桥_智力题(小明一家过桥)
- 模拟微博用户注册的程序【使用了HashSet集合实现】
- 手机远程管理服务器软件,远程控制软件 手机远程管理服务器