什么情况下用消息队列服务器?

时间:2023-02-11 20:18:31
什么情况下用消息队列服务器?

用在什么场景下? 

不用它,会有什么弊端?

它和传统的socket开发的处理多个client的服务器代码有什么差异? 

6 个解决方案

#1


消息队列可用在:通讯相关的场景,如:网络通讯的接收和发送、不同模块间的消息传递(如:数据的分发,消息的分发等)

#2


引用 1 楼 lianshaohua 的回复:
消息队列可用在:通讯相关的场景,如:网络通讯的接收和发送、不同模块间的消息传递(如:数据的分发,消息的分发等)


没体现其优势啊? 

任何一家小软件公司都有自己的服务器,客户端, 如果把消息服务器用上,有什么好处? 或者优势。

或者说什么场景必须得有,具体一点的项目背景,这样方便理解,

#3


引用 2 楼 u012879787 的回复:
Quote: 引用 1 楼 lianshaohua 的回复:

消息队列可用在:通讯相关的场景,如:网络通讯的接收和发送、不同模块间的消息传递(如:数据的分发,消息的分发等)


没体现其优势啊? 

任何一家小软件公司都有自己的服务器,客户端, 如果把消息服务器用上,有什么好处? 或者优势。

或者说什么场景必须得有,具体一点的项目背景,这样方便理解,

效率、扩展性、透明性;
任何场景都可以不使用(或不使用第三方的),都可以自己写。

#4


引用 3 楼 lianshaohua 的回复:
Quote: 引用 2 楼 u012879787 的回复:

Quote: 引用 1 楼 lianshaohua 的回复:

消息队列可用在:通讯相关的场景,如:网络通讯的接收和发送、不同模块间的消息传递(如:数据的分发,消息的分发等)


没体现其优势啊? 

任何一家小软件公司都有自己的服务器,客户端, 如果把消息服务器用上,有什么好处? 或者优势。

或者说什么场景必须得有,具体一点的项目背景,这样方便理解,

效率、扩展性、透明性;
任何场景都可以不使用(或不使用第三方的),都可以自己写。


既然有这么多好处,为什么很多人还用boost, 不用个消息服务器来完成socket通信? 

#5


引用 4 楼 u012879787 的回复:
Quote: 引用 3 楼 lianshaohua 的回复:

Quote: 引用 2 楼 u012879787 的回复:

Quote: 引用 1 楼 lianshaohua 的回复:

消息队列可用在:通讯相关的场景,如:网络通讯的接收和发送、不同模块间的消息传递(如:数据的分发,消息的分发等)


没体现其优势啊? 

任何一家小软件公司都有自己的服务器,客户端, 如果把消息服务器用上,有什么好处? 或者优势。

或者说什么场景必须得有,具体一点的项目背景,这样方便理解,

效率、扩展性、透明性;
任何场景都可以不使用(或不使用第三方的),都可以自己写。


既然有这么多好处,为什么很多人还用boost, 不用个消息服务器来完成socket通信? 


也有很多方面的原因呀,比如:不一定需要,或满足自己的业务需求就好,并不是越快并发越大就越好,要考虑成本……
boost也有boost的优势,小巧,灵活…………

#6


小心队列在以下场景会用到,
高并发时服务器有压力时可以使用消息队列,这样可以减轻服务器压力。
不需要及时通讯时使用消息队列,比如发送email,可以先存放在消息队列中,然后告诉客户端发送成功,按照实际服务器该有的效率进行发送。

#1


消息队列可用在:通讯相关的场景,如:网络通讯的接收和发送、不同模块间的消息传递(如:数据的分发,消息的分发等)

#2


引用 1 楼 lianshaohua 的回复:
消息队列可用在:通讯相关的场景,如:网络通讯的接收和发送、不同模块间的消息传递(如:数据的分发,消息的分发等)


没体现其优势啊? 

任何一家小软件公司都有自己的服务器,客户端, 如果把消息服务器用上,有什么好处? 或者优势。

或者说什么场景必须得有,具体一点的项目背景,这样方便理解,

#3


引用 2 楼 u012879787 的回复:
Quote: 引用 1 楼 lianshaohua 的回复:

消息队列可用在:通讯相关的场景,如:网络通讯的接收和发送、不同模块间的消息传递(如:数据的分发,消息的分发等)


没体现其优势啊? 

任何一家小软件公司都有自己的服务器,客户端, 如果把消息服务器用上,有什么好处? 或者优势。

或者说什么场景必须得有,具体一点的项目背景,这样方便理解,

效率、扩展性、透明性;
任何场景都可以不使用(或不使用第三方的),都可以自己写。

#4


引用 3 楼 lianshaohua 的回复:
Quote: 引用 2 楼 u012879787 的回复:

Quote: 引用 1 楼 lianshaohua 的回复:

消息队列可用在:通讯相关的场景,如:网络通讯的接收和发送、不同模块间的消息传递(如:数据的分发,消息的分发等)


没体现其优势啊? 

任何一家小软件公司都有自己的服务器,客户端, 如果把消息服务器用上,有什么好处? 或者优势。

或者说什么场景必须得有,具体一点的项目背景,这样方便理解,

效率、扩展性、透明性;
任何场景都可以不使用(或不使用第三方的),都可以自己写。


既然有这么多好处,为什么很多人还用boost, 不用个消息服务器来完成socket通信? 

#5


引用 4 楼 u012879787 的回复:
Quote: 引用 3 楼 lianshaohua 的回复:

Quote: 引用 2 楼 u012879787 的回复:

Quote: 引用 1 楼 lianshaohua 的回复:

消息队列可用在:通讯相关的场景,如:网络通讯的接收和发送、不同模块间的消息传递(如:数据的分发,消息的分发等)


没体现其优势啊? 

任何一家小软件公司都有自己的服务器,客户端, 如果把消息服务器用上,有什么好处? 或者优势。

或者说什么场景必须得有,具体一点的项目背景,这样方便理解,

效率、扩展性、透明性;
任何场景都可以不使用(或不使用第三方的),都可以自己写。


既然有这么多好处,为什么很多人还用boost, 不用个消息服务器来完成socket通信? 


也有很多方面的原因呀,比如:不一定需要,或满足自己的业务需求就好,并不是越快并发越大就越好,要考虑成本……
boost也有boost的优势,小巧,灵活…………

#6


小心队列在以下场景会用到,
高并发时服务器有压力时可以使用消息队列,这样可以减轻服务器压力。
不需要及时通讯时使用消息队列,比如发送email,可以先存放在消息队列中,然后告诉客户端发送成功,按照实际服务器该有的效率进行发送。