项目亮点:
- 通过RocketMQ延时消息特性,完成用户购票10分钟后未支付情况下取消订单功能
- 封装缓存组件库避免注册用户时,用户名全局唯一带来的缓存穿透问题,减轻数据库访问压力
- 通过Redis Lua脚本原子特性,完成用户购票令牌分配,通过令牌限流以应对海量用户需求
- 通过订单号和用户信息复合分片算法完成订单数据分库分表,支持订单号和用户查询维度
(一)RocketMQ
- 针对延期关闭订单,除了用 RocketMQ 还有什么方案?各自优缺点?
优点
缺点
适用场景
数据库轮询
·实现简单,不需要额外中间件
·数据库负载增加
·实时性差
小型项目
信息队列Rocket MQ
·实时性好
·用中间件,成本高,复杂
大型项目高并发项目
·削峰填谷:MQ可以平滑处理系统的峰值流量,通过缓冲和调节消息处理速率,避免了系统因突发高负载而崩溃或响应变慢的情况
·异步通信:发送者可以将消息发送到队列后立即返回,而不必等待接收者处理完毕。这种异步通信可以提高系统的并发性和响应速度,增强系统的可伸缩性。
3.还有哪些其他消息队列?