消息队列高手课
从源码角度全面解析 MQ 的设计与实现
李玥  美团高级技术专家
专栏
已完结·共 42 讲
|
5.2w 人已学
|
收藏
半消息和普通消息的唯一区别是,在事务提交之前,对于消费者来说,这个消息是不可见的。
来自:04 | 如何利用事务消息实现分布式事务?
19 人划过
在扩容 Consumer 的实例数量的同时,必须同步扩容主题中的分区(也叫队列)数量,确保 Consumer 的实例数和分区数量是相等的
来自:07 | 消息积压了该如何处理?
18 人划过
最后说一下消费位置,每个消费组内部维护自己的一组消费位置,每个队列对应一个消费位置。消费位置在服务端保存,并且,消费位置和消费者是没有关系的。每个消费位置一般就是一个整数,记录这个消费组中,这个队列消费到哪个位置了,这个位置之前的消息都成功消费了,之后的消息都没有消费或者正在消费。
来自:08 | 答疑解惑(一) : 网关如何接收服务端的秒杀结果?
15 人划过
基于这个思路,不光是可以使用关系型数据库,只要是支持类似“INSERT IF NOT EXIST”语义的存储类系统都可以用于实现幂等,比如,你可以用 Redis 的 SETNX 命令来替代数据库中的唯一约束,来实现幂等消费。
来自:06 | 如何处理消费过程中的重复消息?
8 人划过
这样综合考虑下的淘汰算法,不仅命中率更高,还能有效地避免“挖坟”问题:例如某个客户端正在从很旧的位置开始向后读取一批历史数据,内存中的缓存很快都会被替换成这些历史数据,相当于大部分缓存资源都被消耗掉了,这样会导致其他客户端的访问命中率下降。加入位置权重后,比较旧的页面会很快被淘汰掉,减少“挖坟”对系统的影响。
来自:16 | 缓存策略:如何使用缓存来减少磁盘IO?
7 人划过
在 RPC 框架中,最关键的就是理解“桩”的实现原理,桩是 RPC 框架在客户端的服务代理,它和远程服务具有相同的方法签名,或者说是实现了相同的接口。
来自:31 | 动手实现一个简单的RPC框架(一):原理和程序的结构
4 人划过
ZooKeeper 它是一个可以保证数据一致性的分布式存储,所以,集群中只会有一个 Broker 抢到这个临时节点,那它就是 Leader 节点。其他没抢到 Leader 的节点,会 Watch 这个临时节点,如果当前的 Leader 节点宕机,所有其他节点都会收到通知,它们会开始新一轮的抢 Leader 游戏。
来自:28 | 答疑解惑(二):我的100元哪儿去了?
4 人划过
这种方法它只适合于线程之间碰撞不太频繁
来自:18 | 如何用硬件同步原语(CAS)替代锁?
3 人划过
但是在异步请求中,客户端异步发送请求并不会等待服务端,缺少了这个天然的背压机制,如果服务端的处理速度跟不上客户端的请求速度,客户端的发送速度也不会因此慢下来,就会出现在途的请求越来越多,这些请求堆积在服务端的内存中,内存放不下就会一直请求失败。服务端处理不过来的时候,客户端还一直不停地发请求显然是没有意义的。为了避免这种情况,我们需要增加一个背压机制,在服务端处理不过来的时候限制一下客户端的请求速度。
来自:32 | 动手实现一个简单的RPC框架(二):通信与序列化
3 人划过
分布式锁本身就很难实现,使用分布式锁对性能也会有比较大的损失。这种“一次性写入”的设计,只有创建 Ledger 的进程可以写入数据,Ledger 这个资源不共享,也就不需要加锁,是一种很巧妙的设计,你在遇到类似场景的时候可以借鉴。
来自:27 | Pulsar的存储计算分离设计:全新的消息队列设计思路
3 人划过
*精彩内容为该课程各文章中划线次数最多的内容
免费试读
讲师

李玥

美团高级技术专家

李玥,美团高级技术专家,前京东零售技术架构部资深架构师,负责主导设计新一代京东消息队列产品:JMQ。李玥从事互联网研发、架构十余年,在流数据的一致性分发和可靠存储,分布式实时计算、高可用分布式系统架构等技术领域有丰厚经验。
编辑推荐
讲师的其他课程
后端存储实战课
李玥
美团高级技术专家

30讲 | 43776 人已学习

¥59¥99
包含这门课的学习路径

架构师

28门课程 151.1w人学习

Go工程师

16门课程 89.5w人学习

后端工程师

27门课程 183.2w人学习
看过的人还看了
MySQL 实战 45 讲
林晓斌
网名丁奇,前腾讯云数据库负责人

49讲 | 223691 人已学习

¥68¥199
数据结构与算法之美
王争
前 Google 工程师

81讲 | 282515 人已学习

¥68¥199
左耳听风
陈皓
网名“左耳朵耗子”,资深技术专家

119讲 | 179736 人已学习

¥98¥399
从 0 开始学架构
李运华
网名“华仔”,前阿里资深技术专家(P9)

66讲 | 151709 人已学习

¥68¥199
ZooKeeper 实战与源码剖析
么敬国
新东方集团首席架构师

47讲 | 18942 人已学习

¥59¥129
分布式技术原理与算法解析
聂鹏程
智载云帆 CTO,前华为分布式 Lab 资深技术专家

43讲 | 39567 人已学习

¥59¥129