MQ 面试题 为什么要使用MQ (1)**解耦:**A 系统发送数据到 BCD 三个系统,通过接口调用发送。如果 E 系统也要这个数据呢?那如果 C 系统现在不需要了呢?A 系统负责人几乎崩溃......A 系统跟其它各种乱七八糟的系统严重耦合,A 系统产生一条比较关键的数据,很多系统都需要 A 系 ...
转载
2021-07-04 00:18:00
62阅读
2评论
MQ的全称是Message Queue, 字面意思:“消息队列”。“消息队列”是在消息的传输过程中保存消息的容器,简单来说就是消息(数据)以“管道”的形式在两个应用之间传递。 什么是AMQP?答案:AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。AMQP的主要特征是面向消息、队列、路由
转载
2022-03-23 23:01:24
79阅读
点赞
文章目录你们项目中哪些地方有使用到 MQ ?你们项目中哪些地方有使用到 MQ ?使用 MQ 异步发送
原创
2022-09-06 07:24:19
326阅读
1.那你说一下你们在项目里是怎么用消息队列的?业务流程.2.那你说说用消息队列都有什么优点和缺点?解耦: 举例说明异步: 举例说明削峰平谷: 举例说明3.kafka、activemq、rabbitmq、rocketmq都有什么区别及适合哪些场景?单机吞吐量: 1.activeMq 万级,吞吐量比Ro
转载
2020-05-20 09:14:00
244阅读
2评论
MQ的优点和缺点? 优点:解耦 异步,削峰 解耦: 所以需要用来解耦: 异步: 解决方法: 削峰: 解决方法是: 缺点:降低高可用性.增加系统的复杂程度.一致性问题 降低高可用的原因:系统引入的外部依赖越多,越容易挂掉,本来你就是A系统调用BCD三个系统的接口就好了,现在又加入一个mq,万一mq挂掉
转载
2019-06-11 22:43:00
129阅读
2评论
01、问:什么是JVM? (灵魂拷问)答:jvm是java虚拟机Java Virtual Machine的缩写。02、问:什么是java虚拟机?答:虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java虚拟机屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟
转载
2023-07-26 17:53:55
28阅读
项目中的MQ: rabbitmqspring.rabbitmq.host=127.0.0.1 主机spring.rabbitmq.port=5672 端口spring.rabbitmq.username=guest 用户名spring.rabbitmq.password=guest spring
转载
2019-01-24 10:28:00
50阅读
2评论
市场上流行的MQ有:Kafka、ActiveMQ、RabbitMQ、RocketMQ 本文只针对RocketMQ,其他也有很多大同小异的地方文章目录1、什么是 rabbitmq2、为什么要使用 rabbitmq3、使用 rabbitmq 的场景4、如何确保消息正确地发送至 RabbitMQ? 如何确保消息接收方消费了消息?5、如何避免消息重复投递或重复消费?6、消息基于什么传输?7、消息如何分发?8、消息怎么路由?9、如何确保消息不丢失?10、使用 RabbitMQ 有什么好处?11、RabbitMQ.
原创
2021-05-20 23:37:35
241阅读
简述Nginx、优点和缺点Nginx是一个Web服务器和反向代理服务器,可以实现负载均衡。优点:响应快高扩展、跨平台高可靠、用于反向代理低内存消耗,这个Nginx支持高并发的基础为什么要使用MQ解耦、异步、削峰解耦:一个系统或者说一个模块,调用了多个系统或者模块,互相之间很复杂,维护起来比较麻烦。但是这个接口不需要同步接口的,比如通知等,这个时候采用异步化进行解耦异步:某些操作,比如非事务操作,这
原创
2022-04-20 14:55:51
248阅读
目录1. 你们项目中哪些地方有使用到MQ2. 为什么需要使用MQ3. MQ 与多线程实现异步的区别4. MQ 如何避免消息堆积的问题5. MQ 宕机了消息是否会丢失呢6. MQ 如何保证消息不丢失7. 生产者投递消息,mq 宕机了如何处理8. MQ 如何保证消息顺序一致性问题9. MQ 如何保证消息幂等问题10. MQ 与 Redis 如何保证数据一致性问题 1. 你们项目中哪些地方有使用到MQ
转载
2023-07-27 20:18:23
52阅读
MQ消息中间件(工作+面试)AMQP协议介绍AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。AMQP在消息提供者和客户端的行为进行了强制规定,使得不同卖商之间真正实现了互操作能力。JMS是早期消息中间件进行标准化的一
转载
2022-04-02 18:13:52
194阅读
张生荣一、什么是JMSJMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持(百度百科给出的概述)。我们可以简单的理解:两个应用程序之间需要进行通信,我们使用一个JMS
转载
2023-07-19 15:39:45
42阅读
RabbitMQ的RPC模式是指远程调用,客户端通过RabbitMQ发送消息至服务器端,在服务器端调用各种函数对消息进行处理后,将处理结果通过另一消息队列返回给客户端。
RabbitMQ之前的几种模式的通信都是基于Producer发送消息到Consumer,然后Consumer进行消费,假设我们需要Consumer操作完毕之后返回给Producer一个回调呢?前面几种模式就行不通了;
原创
精选
2023-08-03 09:15:49
10000+阅读
点赞
3评论
02 | 该如何选择消息队列?2019-07-25 李玥你好,我是李玥。这节课我景不冷门,你遇到Bug的概率非常低,因为大部分你可能遇到的,其他人早就遇到并且修复。使用过程中遇到的一些问题,也容易在网上搜索到类似的
原创
2022-03-14 17:31:19
466阅读
MQ 简述RabbitMQ的架构设计 Broker :rabbitmq的服务节点 Queue :队列,是RabbitMQ的内部对象,用于存储消息。RabbitMQ中消息只能存储在队列中。生产者投递消息到队列,消费者从队列中获取消息并消费。多个消费者可以订阅同一个队列,这时队列中的消息会被平均分摊(轮
MQ(Message Queue)作为一种用于实现异步通信的技术,具有重要的作用和应用场景。在面试过程中,MQ相关的问题经常被问到,因此了解MQ的用途和设计原则是必不可少的。本文总结了MQ的常见面试题,包括MQ的作用、产品选型、消息不丢失的保证、消息消费的幂等性、消息顺序的保证、消息的高效读写、分布式事务的最终一致性等方面。通过深入理解这些问题,可以更好地理解MQ的应用和设计,为面试和实际应用提供参考。
原创
2023-09-11 09:16:48
465阅读
点赞
点击上方Java学习指南关注公众号 每天阅读Java干货文章 为什么使用消息队列?消息队列的优点和缺点?kafka、activemq、rabbitmq、rocketmq都有什么优缺点? 面试官角度分析: (1)你知不知道...
转载
2020-11-10 13:00:00
108阅读
2评论
BAT公司里面,同学都面过,一种比较类似的一种面试风格。就是一般我们不是发散的,我们是从点,铺开,比如说我们会可能跟你聊聊高并发话题,就这个话题里面跟你聊聊缓存、MQ等等东西吧。 对于每个小话题,比如说MQ,我们会从浅入深,这个上面的这个面试套路其实是蛮典型的,如果你确实说自己会MQ,你出去面试,去一些大公司面试,有些面试官可能就是这种风格,就是一步一步深挖其实上面是一个非常典型的关于消息队列的技
原创
2021-02-13 21:09:41
226阅读