1、为什么要引入MQ系统,直接读写数据库不行吗?其实就是问问你消息队列都有哪些使用场景,然后你项目里具体是什么场景,说说你在这个场景里用消息队列是什么? 面试官问你这个问题,期望的一个回答是说,你们公司有个什么业务场景,这个业务场景有个什么技术挑战,如果不用 MQ 可能会很麻烦,但是你现在用了 MQ ...
分类:
其他好文 时间:
2019-03-29 10:30:28
阅读次数:
231
面试题为什么使用消息队列?消息队列有什么优点和缺点?Kafka、ActiveMQ、RabbitMQ、RocketMQ都有什么区别,以及适合哪些场景?面试官心理分析其实面试官主要是想看看:第一,你知不知道你们系统里为什么要用消息队列这个东西?不少候选人,说自己项目里用了Redis、MQ,但是其实他并不知道自己为什么要用这个东西。其实说白了,就是为了用而用,或者是别人设计的架构,他从头到尾都没思考过。
分类:
编程语言 时间:
2019-03-28 18:17:15
阅读次数:
173
一、消息中间件相关知识 1、概述 消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发Ro ...
分类:
其他好文 时间:
2019-03-28 00:41:31
阅读次数:
169
5.1 持久化 这个是指即使服务挂机了,数据可以备份, 服务器重启的时候,数据可以恢复。所以一般设为true,和redis差不多,redis的好处就是可以持久化 5.2 body传消息的时候,我们一般传字符串的。spring整合之后,可以传json,实体类,图片,pdf等等 5.3 property ...
分类:
其他好文 时间:
2019-03-27 12:29:05
阅读次数:
199
昨天的上班经历 昨天是周四,周四是发版日。因为周五有其他的会,我们组决定周四辛苦一点,开会将项目验收和两个技术方案评审都做了。验收项验收的是我晚上要发版的系统。 白天的时候不堪忍受之前一直沿用的jackson文本方式进行MQ传输的低效和对嵌套对象反序列化支持性差。所以临时决定给序列化和反序列化接口新 ...
分类:
其他好文 时间:
2019-03-25 10:26:10
阅读次数:
221
1. 如果用户的请求比较费时,可以考虑将用户的请求信息放到队列中,立即返回给用户处理中等信息,这样可以给用户比较流畅的体验,后端可以利用单独的服务消费消息,做到了解耦,提高了并发能力。 2. 本文使用jdk为我们提供的阻塞队列api,来实现一个基于内存的简单消息队列。主要涉及的接口BlockingQ ...
分类:
编程语言 时间:
2019-03-20 01:22:21
阅读次数:
486
特性 ActiveMQ RabbitMQ RocketMQ Kafka 单机吞吐量 万级,吞吐量比RocketMQ和Kafka要低了一个数量级 万级,吞吐量比RocketMQ和Kafka要低了一个数量级 10万级,RocketMQ也是可以支撑高吞吐的一种MQ 10万级别,这是kafka最大的优点,就 ...
分类:
其他好文 时间:
2019-03-17 13:48:00
阅读次数:
147
什么叫消息队列 消息(Message)是指在应用间传送的数据。消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象。 消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,由消息系统来确保消息的可靠传递。消息发布者只管把消息发布到 MQ 中而不用管谁 ...
分类:
其他好文 时间:
2019-03-13 21:31:35
阅读次数:
297
我们以一个订单流转流程来举例,例如订单子系统创建订单,需要将订单数据下发到其他子系统(与第三方系统对接)这个场景,我们通常会将两个系统进行解耦,不直接使用服务调用的方式进行交互。其业务实现步骤通常为: 1、A系统创建订单并入库。 2、发送消息到MQ。 3、MQ消费者消费消息,发送远程RPC服务调用, ...
分类:
其他好文 时间:
2019-03-12 18:33:59
阅读次数:
325
1、面试官心里分析 其实聊到这个问题,一般面试官要考察两块: (1)你有没有对某一个消息队列做过较为深入的原理的了解,或者从整体了解把握住一个mq的架构原理 (2)看看你的设计能力,给你一个常见的系统,就是消息队列系统,看看你能不能从全局把握一下整体架构设计,给出一些关键点出来 说实话,我一般面类似 ...
分类:
其他好文 时间:
2019-03-08 23:42:47
阅读次数:
238