1.消息队列概念:
队列结构的中间件
消息放入后,不需要立即处理
由订阅者/消费者按顺序处理
2.核心结构:
3.应用场景:
4.队列介质:
MySQL:可靠性高、易实现;速度慢
Redis:速度快;单挑大消息包时效率低
消息系统:专业性强、可靠;学习成本高
5.消息处理触发机制:
死循环方式读取:易实现,故障时无法及时恢复
定时任务:压力均分,有处理量上限
守护进程:类似于PHP-FPM和PHP-CG,需要shell基础
消息处理触发机制
队列介质
应用场景截图
消息队列的概念:
1、队列结构的中间件
2、消息放入后,不需要立即处理
3、按照顺序进行逐步处理
消息队列应用场景
1、冗余
2、解耦
3、流量削峰(秒杀系统)
4、异步通信
5、扩展性
6、排序保证
消息队列有点和缺点
队列介质:Mysql、Redis、消息系统
消息处理触发机制
1、死循环方式读取:易实现,故障时无法及时恢复
2、定时任务:压力均分,有处理量上限
3、守护进程:类似php-fpm和php-cg,需要shell基础
消息出力触发机制
队列的优缺点
核心的结构
主要内容 消息队列
redis消息队列的应用场景
消息处理触发机制
消息队列介质
队列应用场景
消息队列结构
消息队列概念
消息队列内容
消息触发机制
redis 使用场景
消息处理触发机制
mark,mark
。。。。。。。。
消息队列的应用场景
冗余
解耦
流量削峰
异步通信
扩展性
排序保证
队列介质:
Mysql:可靠性高、易实现,速度慢
Redis:速度快,单条大消息包时效率低
消息系统:专业性强、可靠,学习成本高
消息处理触发机制:
死循环读取:易实现,故障时无法及时恢复
定时任务:压力均分,有处理量上限
守护进程:类似php-fpm php-cg,需要shell基础
MQ应用场景:
冗余、解耦、流量削峰、异步通信、扩展性、排序保证
消息队列核心结构:
业务系统-入队->消息队列-出队->队列处理系统
应用场景:
数据冗余
解耦:(入队系统,出队系统相互独立,互不干涉。)
总结:
在学习该课程后,更多了是初步了解了消息队列的原理和使用场景。
概念:
队列结构的中间件
消息放入后,不需要立即处理
由订阅者/消费者按顺序处理
白话文:
当遇到一个并发非常大的或者耗时非常长的环境的时候,而同时需要立即获取该环境下的结果,消息队列可以比较好的解决这个问题。
系统结构如下图。
系统的解耦性还有队列的处理:
记录入队的id,判断秒杀的产品数量是否大于消息队列的数量,是,该用户入队列。系统即完成入队处理。而另一边即需要做消息入库的处理。此处也是使用了消息队列的解耦性进行处理
队列介质,专业的比如RabbitMQ