消息队列 – 在Web应用程序中使用RabbitMQ等消息传递?

我想了解什么是场景/用途/ RabbitMQ等消息传递方式可以帮助消费者Web应用程序.

有什么具体的资源要学习吗?

目前哪些Web应用程序正在使用这样的消息传递方案,以及如何?

解决方法

通常,消息总线(例如RabbitMQ,但不限于)允许可靠的作业处理队列.

这对Web应用程序意味着什么是根据需求增长来扩展应用程序的能力,并保持UI快速响应.

而不是迫使用户在处理作业时等待,他们可以请求处理作业(例如,单击网页上的按钮开始转码服务器上的视频文件),该消息向您的总线​​发送消息,让我们后端服务在队列转入时接收,也可能通知用户工作已经/将开始.然后,您可以将控制权返回给UI,因此用户可以继续使用该应用程序.

在这种情况下,您的Web界面无法提升重要性,而只是将用户的可见性视为合适的进程阶段(例如,该作业可以逐步更新可以查询显示的进程状态的数据库记录.你的用户).

我会假设任何经历任何类型的相当流量的Web应用程序都将拥有这种类型的基础架构.虽然存在缺点(网络故障可能会中断消息传递,更复杂的基础架构等),但扩展后端的优势越来越明显.如果您正在使用云服务,这种类型的基础设施使得添加其他消息处理程序来处理您的作业非常简单,可以通过订阅作业队列,只需选择要处理的消息.

相关文章

vue阻止冒泡事件 阻止点击事件的执行 <div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些