12.4 高并发场景问题及实战
缓存一致性
13 高并发之消息队列思路
13.1 业务案例
将发短信封装成一条消息放进消息队列中,若发生短信过多,队列已满,需要控制发送的频率.
通过将事件封装成消息放入队列,实现了业务解耦,异步设计,确保了短信服务只要正常后,一定会将短信成功发到用户.
13.2 消息队列的特性
业务无关:只做消息分发
FIFO :先投递先到达
容灾:节点的动态增删和消息的持久化
性能:吞吐量提升,系统内部通信效率提高
- 为何需要消息队列呢
[生产]和[消费]的速度或稳定性等因素不一致
- 优点
业务解耦
最终一致性
广播
错峰与流控
队列
kafka