首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
消息中间件
订阅
diedai
更多收藏集
微信扫码分享
微信
新浪微博
QQ
12篇文章 · 0订阅
RocketMq中MessageQueue的分配
都知道Rocketmq中有ConsumerGroup的概念。在集群模式下,多台服务器配置相同的ConsumerGroup,能够使得每次只有一台服务器消费消息(注意,但不保证只消费一次,存在网络抖动的情况)。那么,笔者就很疑惑,Rocketmq是如何实现这个模式的?如何保证只有一…
【Java进阶面试系列之四】扎心!线上服务宕机时,如何保证数据100%不丢失?【石杉的架构笔记】
上篇文章「Java进阶面试系列之三」消息中间件在你们项目里是如何落地的?,我们用一个简单易懂的电商场景给大家引入说明了一个消息中间件的使用场景。 同时,我们还基于RabbitMQ的HelloWorld级别的代码,给出了订单服务和仓储服务如何基于MQ中间件收发消息的示例。 这篇文…
【Java进阶面试系列之三】哥们,消息中间件在你们项目里是如何落地的?【石杉的架构笔记】
在问完这两个问题之后,不同风格的面试官可能会展开不同的发问。 好!这篇文章,咱们从第二种风格来聊聊。 我们会落地到某个具体业务系统的某个场景下,看看如何使用消息中间件,然后其效果是什么。 业务场景的话,咱们就用大家都很熟悉的电商业务为例,这里为了便于理解,对其做了一定的抽象和简…
高并发场景下,如何保证生产者投递到消息中间件的消息不丢失?【石杉的架构笔记】
上篇文章:《面试大杀器:消息中间件如何实现消费吞吐量的百倍优化?》,我们分析了RabbitMQ开启手动ack机制保证消费端数据不丢失的时候,prefetch机制对消费者的吞吐量以及内存消耗的影响。 通过分析,我们知道了prefetch过大容易导致内存溢出,prefetch过小又…
Java进阶必备:优雅的告诉面试官消息中间件该如何实现高可用架构?【石杉的架构笔记】
这篇文章,我们来聊一下消息中间件高可用架构的一些原理。 对于一个合格的高级Java工程师而言,你肯定会碰到在系统里用到MQ的场景,那么这个时候你需要基于你的业务场景和需求,考虑在使用MQ的时候可能遇到的一些技术问题。 接着,你必须得针对这些技术问题设计一套完整的技术方案。 你需…
【架构设计之道】这一波优雅的操作,会把你的中间件系统架构带到另一个Level【石杉的架构笔记】
这个中间件系统的本质是希望能够用分布式的方式来处理一些数据,但是具体的作用涉及到核心技术,所以这里不能直接说明。 但是他的核心思想,就是把数据分发到很多台机器上来处理,然后需要有一台机器来控制N多台机器的分布式处理,大概如下图所示。 那么既然是分布式的处理,就肯定涉及到在Mas…
RocketMQ高性能之底层存储设计
RocketMQ在底层存储上借鉴了Kafka,但是也有它独到的设计,本文主要关注深刻影响着RocketMQ性能的底层文件存储结构,中间会穿插一点点Kafka的东西以作为对比。 Commit Log,一个文件集合,每个文件1G大小,存储满后存下一个,为了讨论方便可以把它当成一个文…
浅谈消息队列及常见的消息中间件
消息队列 已经逐渐成为企业应用系统 内部通信 的核心手段。它具有 低耦合、可靠投递、广播、流量控制、最终一致性 等一系列功能。 当前使用较多的 消息队列 有 RabbitMQ、RocketMQ、ActiveMQ、Kafka、ZeroMQ、MetaMQ 等,而部分 数据库 如 R…
【Java进阶面试系列之五】消息中间件集群崩溃,如何保证百万生产数据不丢失?【石杉的架构笔记】
目前为止,你的RabbitMQ部署在线上服务器了,对吧?然后订单服务和仓储服务都可以基于RabbitMQ来收发消息,同时仓储服务宕机,不会导致消息丢失。 好,我们来看下目前为止的架构图。 答案其实很简单,默认情况下,按照我们目前的代码和配置,这个数据就会丢失了。 所以在这里而言…
互联网面试必杀:如何保证消息中间件全链路数据100%不丢失(1)【石杉的架构笔记】
这篇文章,我们来聊聊在线上生产环境使用消息中间件技术的时候,从前到后的全链路到底如何保证数据不能丢失。 这个问题,在互联网公司面试的时候高频出现,而且也是非常现实的生产环境问题。 如果你的简历中写了自己熟悉MQ技术(RabbitMQ、RocketMQ、Kafka),而且在项目里…