嵌入式学习小组
直播中

毛萃

7年用户 881经验值
私信 关注

为什么要使用消息队列?消息队列的优缺点

    由于项目需要,在嵌入式操作系统的中间件设计中,采用了消息队列来作为各个模块之间的通信方式,同时允许用户层的不同用户来访问中间件的各个模块。    现在列出下面三个问题来加深对消息队列的理解,以便后续的架构优化:问题1:为什么要使用消息队列?问题2:消息队列的优缺点?问题3:如何增强消息队列使用的稳定性?问题1:为什么会使用消息队列?     由于业务划分有用户层,中间层...

回帖(1)

tercelzhang11

2022-3-18 11:34:24
对嵌入式系统使用消息队列的一些认识
由于项目需要,在嵌入式操作系统的中间件设计中,采用了消息队列来作为各个模块之间的通信方式,同时允许用户层的不
同用户来访问中间件的各个模块。
现在列出下面三个问题来加深对消息队列的理解,以便后续的架构优化:
问题1:为什么要使用消息队列?
问题2:消息队列的优缺点?
问题3:如何增强消息队列使用的稳定性?
问题1:为什么会使用消息队列?
由于业务划分有用户层,中间层和系统层。要保证用户层的多个用户对中间层的不同模块之间的访问,以及多个中间层的
模块要访问系统层的不同模块,选择client-server模型来满足设计需求。要完成client-server之间的通信有多种途径,选择消息队
列一方面是为了将系统的耦合性降低,另一方面是为了保持模块异步运行,减少阻塞。
问题2:消息队列的优缺点?
(1)消息队列出问题将会引起整个系统紊乱,因为在client-server模型中通信都是采用的消息队列,所以要是消息队列出问
题就会引起整个系统的紊乱。
(2)消息有可能会丢失,重复使用等问题
问题3:如何增强消息队列使用的稳定性?
为了防止消息重复使用,一方面不同client有各自的标志,防止特定的消息被其它模块使用;另一方面消息在接收完成之后将
会被删除。对消息队列的消息长度要多适当调整,避免有些消息过长而被丢弃。至于消息队列本身的问题,需要从系统层面去
多分析和优化。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分