高并发秒杀公平不超卖-消息MQ架构体系(优化版)
2024-01-24 11:07:46 0 举报
AI智能生成
登录查看完整内容
为你推荐
查看更多
体系架构
作者其他创作
大纲/内容
第四章:总结
kafka架构回顾
环境搭建以及测试
Kafka基础知识回顾
位移提交
场景描述:消费端消息丢失
解决方案:手动offset提交
第一种情况
Kafka消息的发送流程
发后即忘
同步消息发送
异步消息发送
Kafka消息的发送方式
场景描述
replication.factor
Kafka集群
acks
解决方案
第二种情况
Kafka消息可靠性传输
Kafka消息顺序性说明
Kafka消息顺序错乱测试
Kafka保证消息顺序性保障
Kafka秒杀公平性保证
问题描述
生产端启用幂等性
retries = 0
相关知识:事务机制
生产端消息重复
手动位移提交
下游业务做幂等性处理
消费端消息重复
Kafka秒杀不超卖保证
zookeeper集群搭建
Kafka集群搭建
集群搭建
Kafka集群测试
Kafka Eagle
Kafka集群监控
Kafka消息队列高可用
副本机制
分区leader选举
分区重新分配
修改副本因子
分区管理
存储结构介绍
消息顺序写入
页缓存
日志清理
零拷贝技术
kafka存储
Kafka为什么快?
第三章:Kafka在秒杀场景下进阶
秒杀介绍
子主题
定时触发,流量在瞬间突增
秒杀请求中常常只有部分能够成功
秒杀商品数量往往有限,不能超卖,但能接受少卖
不要求立即返回真实下单结果
特点介绍
何为"秒杀"及其特点
秒杀流程-收单
秒杀流程-下单
秒杀业务流程图
秒杀流程介绍
资料文档
开发语言
支持的协议
消息存储
事务消息
管理界面
消息重复
吞吐量
顺序消息
消息确认
常见的消息队列比对
第一章:秒杀以及常见的消息队列介绍
RabbitMQ架构回顾
amqp生产者流转过程
amqp消费者流转过程
amqp命令概览
amqp协议介绍
fanout
direct
topic
headers
交换机的类型
(性能对比)
RabbitMQ环境搭建以及测试
RabbitMQ基础知识回顾
库存回退架构
设置消息的TTL
设置队列的TTL
过期时间
原理介绍
具体实现
死信队列
RabbitMQ在订单未支付时的库存回退保障
场景描述:保存在RabbtitMQ 服务端的消息丢失
解决方案:消息持久化处理
队列索引(rabbit_queue_index)
msg_store_persistent
msg_store_transient
消息存储(rabbit_msg_store)
存储机制
rabbit_amqqueue_process
backing_queue
alpha: 消息内容(消息体,属性和headers)和消息索引都存储在内存中
beta:消息内容保存到磁盘中,消息索引保存到内存中
gamma:消息内容保存在磁盘中,消息索引在磁盘和内存中都有
delta:消息内容和索引都在磁盘中
队列消息的状态
主要是满足不同的内存和CPU的需求
增加prefetch_count的值,一次发送多条消息给消费者
multiple ack:降低ack带来的开销
消息堆积的解决方案
队列的结构
队列的组成部分
特点:尽可能的将消息存储到磁盘中,在消息消费的时候在将其加载到内存中
设计目的:支持更长的队列(支持能多的消息存储)
使用场景:当消费者由于某种原因宕机,导致大量的消息堆积
惰性队列
相关知识:消息存储机制
场景描述:消费者消费到这个消息但是还没有及时处理,消费者宕机了
解决方案:手动应答
场景描述:生成者将消息发送给交换机以后,正当交换机将这个消息发送给指定队列的时候,该队列所在的主机宕机了
生产者事务机制
生产者确认机制
第三种情况
RabbitMQ消息可靠性传输
RabbitMQ消息顺序性说明
RabbitMQ消息错乱演示
RabbitMQ消息顺序性保障
RabbitMQ秒杀公平性保证
重复消费原因说明
幂等性保障方案
RabbitMQ秒杀不超卖保证
单机模式
普通集群模式
镜像集群模式
RabbitMQ常见模式
集群原理
创建容器
配置集群
集群节点类型
集群测试
HAProxy + Keepalived集群方案
集群优化
RabbitMQ自带的Web管理端的插件
RabbitMQ的tracing消息轨迹追踪
采用RabbitMQ的HTTP API接口进行监控
集群监控
RabbitMQ普通集群
镜像队列原理介绍
镜像策略介绍
镜像队列测试
RabbitMQ镜像集群
RabbitMQ高可用
第二章: RabbitMQ在秒杀场景下应用
高并发秒杀公平不超卖-消息MQ架构体系
0 条评论
回复 删除
下一页