消息队列
Java架构师公社
分享Java后端开发工作上的一些工作经验与心得
展开
-
阿里二面MQ夺命连环11问,我没顶住......
继之前的mysql夺命连环之后,我发现我这个标题被好多套用的,什么夺命zookeeper,夺命多线程一大堆,这一次,开始面试题系列MQ专题,消息队列作为日常常见的使用中间件,面试也是必问的点之一,一起来看看MQ的面试题。你们为什么使用mq?具体的使用场景是什么?mq的作用很简单,削峰填谷。以电商交易下单的场景来说,正向交易的过程可能涉及到创建订单、扣减库存、扣减活动预算、扣减积分等等。每个接口的耗时如果是100ms,那么理论上整个下单的链路就需要耗费400ms,这个时间显然是太长了。如果这些原创 2020-10-01 14:54:59 · 2712 阅读 · 0 评论 -
RocketMQ的正确打开方式,看完别说不会RocketMQ了
RocketMQ 介绍Apache RocketMQ 是一款 低延迟、高并发、高可用、高可靠的分布式消息中间件。消息队列 RocketMQ 可为分布式应用系统提供异步解耦和削峰填谷的能力,同时也具备互联网应用所需的海量消息堆积、高吞吐、可靠重试等特性。RocketMQ 概念Topic:消息主题,用于将一类的消息进行归类,比如订单主题,就是所有订单相关的消息都可以由这个主题去承载,生产者向这个主题发送消息。 生产者:负责生产消息并发送消息到 Topic 的角色。 消费者:负责从 Topic 接原创 2020-09-15 14:28:28 · 344 阅读 · 0 评论 -
SpringBoot+RabbitMQ方式收发消息你能Get到吗?
本篇会和SpringBoot做整合,采用自动配置的方式进行开发,我们只需要声明RabbitMQ地址就可以了,关于各种创建连接关闭连接的事都由Spring帮我们了~交给Spring帮我们管理连接可以让我们专注于业务逻辑,就像声明式事务一样易用,方便又高效。祝有好收获,先赞后看,快乐无限。1. ????环境配置第一节我们先来搞一下环境的配置,上一篇中我们已经引入了自动配置的包,我们既然使用了自动配置的方式,那RabbitMQ的连接信息我们直接放在配置文件中就行了,就像我们需要用到JDBC连接的时原创 2020-09-15 13:15:40 · 294 阅读 · 0 评论 -
数据库缓存最终一致性的四种方案
背景缓存是软件开发中一个非常有用的概念,数据库缓存更是在项目中必然会遇到的场景。而缓存一致性的保证,更是在面试中被反复问到,这里进行一下总结,针对不同的要求,选择恰到好处的一致性方案。缓存是什么存储的速度是有区别的。缓存就是把低速存储的结果,临时保存在高速存储的技术。如图所示,金字塔更上面的存储,可以作为下面存储的缓存。我们本次的讨论,主要针对数据库缓存场景,将以redis作为mysql的缓存为案例来进行。为什么需要缓存存储如mysql通常支持完整的ACID特性,因为可靠性,原创 2020-09-08 14:37:53 · 218 阅读 · 0 评论