![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java面试
文章平均质量分 80
java面试
资料小助手
python,java,区块链,微服务架构
展开
-
MQ面试题-如何保证消息的可靠性传输?
面试官心理分析这个是肯定的,用 MQ 有个基本原则,就是数据不能多一条,也不能少一条,不能多,就是前面说的重复消费和幂等性问题。不能少,就是说这数据别搞丢了。那这个问题你必须得考虑一下。如果说你这个是用 MQ 来传递非常核心的消息,比如说计费、扣费的一些消息,那必须确保这个 MQ 传递过程中绝对不会把计费消息给弄丢。面试题剖析数据的丢失问题,可能出现在生产者、MQ、消费者中,咱们从 RabbitMQ 和 Kafka 分别来分析一下吧RabbitMQ生产者弄丢了数据生产者将数据发送到 R原创 2023-01-07 18:44:40 · 136 阅读 · 0 评论 -
MQ面试题-如何保证消息的顺序性?
面试官心理分析其实这个也是用 MQ 的时候必问的话题,第一看看你了不了解顺序这个事儿?第二看看你有没有办法保证消息是有顺序的?这是生产系统中常见的问题。面试题剖析我举个例子,我们以前做过一个 mysql binlog 同步的系统,压力还是非常大的,日同步数据要达到上亿,就是说数据从一个 mysql 库原封不动地同步到另一个 mysql 库里面去(mysql ->mysql)。常见的一点在于说比如大数据 team,就需要同步一个 mysql 库过来,对公司的业务系统的数据做各种复杂的操作。原创 2023-01-07 17:39:03 · 646 阅读 · 0 评论 -
MQ面试题-如何保证消息消费的幂等性?
面试官心理分析其实这是很常见的一个问题,这俩问题基本可以连起来问。既然是消费消息,那肯定要考虑会不会重复消费?能不能避免重复消费?或者重复消费了也别造成系统异常可以吗?这个是 MQ领域的基本问题,其实本质上还是问你使用消息队列如何保证幂等性,这个是你架构里要考虑的一个问题。面试题剖析回答这个问题,首先你别听到重复消息这个事儿,就一无所知吧,你先大概说一说可能会有哪些重复消费的问题。首先,比如 RabbitMQ、RocketMQ、Kafka,都有可能会出现消息重复消费的问题,正常。因为这问题原创 2023-01-06 12:36:02 · 473 阅读 · 0 评论 -
MQ面试题-如何保证消息队列的高可用?
面试题剖析这个问题这么问是很好的,因为不能问你 Kafka 的高可用性怎么保证? ActiveMQ 的高可用性怎 么保证?一个面试官要是这么问就显得很没水平,人家可能用的就是 RabbitMQ,没用过 Kafka,你上来问人家 Kafka干什么?这不是摆明了刁难人么。所以有水平的面试官,问的是 MQ 的高可用性怎么保证?这样就是你用过哪个 MQ,你就说说 你对那个 MQ 的高可用性的理解RabbitMQ 的高可用RabbitMQ 是比较有代表性的,因为是基于主从 (非分布式)做高可用性的,原创 2023-01-06 12:36:06 · 59 阅读 · 0 评论 -
MQ面试题-消息队列有什么优缺点?
上一篇文章 为什么使用MQ?已经说过消息队列的优点有 异步,解耦,削峰缺点有以下几个:系统可用性降低系统引入的外部依赖越多,越容易挂掉。本来你就是 A 系统调用 BCD 三个系统的接口就好了, ABCD 四个系统还好好的,没啥问题,你偏加个 MQ 进来,万一 MQ 挂了咋整? MQ 一挂,整套 系统崩溃,你不就完了?如何保证消息队列的高可用,可以点击这里查看。系统复杂度提高硬生生加个 MQ 进来,你怎么保证消息没有重复消费?怎么 处理消息丢失的情况?怎么保证 消息传递的顺序性?头大头大,问题一原创 2023-01-05 15:41:10 · 82 阅读 · 0 评论 -
MQ面试题-为什么使用MQ?
在这个场景中,A 系统跟其它各种乱七八糟的系统严重耦合,A 系统产生一条比较关键的数 据,很多系统都需要 A 系统将这个数据发送过来。,那么A 系统连续发送3 条消息到MQ 队列中,假如耗时5ms,A 系统从接受一 个请求到返回响应给用户,总时长是3 + 5 = 8ms,对于用户而言,其实感觉上就是点个按钮, 8ms 以后就直接返回了,爽!但是高峰期一过,到了下午的时候,就成了低峰期,可能也就1w 的用户同时在网站上操作, 每秒中的请求数量可能也就50 个请求,对整个系统几乎没有任何的压力。原创 2023-01-04 14:07:12 · 71 阅读 · 0 评论