未读消息(小红点),前端 与 RabbitMQ 实时消息推送实践,贼简单~
前几天粉丝群里有个小伙伴问过: web 页面的未读消息(小红点)怎么实现比较简单,刚好本周手头有类似的开发任务,索性就整理出来供小伙伴们参考,没准哪天就能用得上呢。 之前在 《springboot + rabbitmq 做智能家居》 中说过可以用 rabbitmq 的 MQTT 协议做智能家居的指令推送,里边还提到过能用 MQTT 协议做 web 的消息推送,而未读消息( 小红点 )功能刚好应用到实时消息推送了。 MQTT 协议就不再赘述了,没接触过的同学翻翻前边的文章温习一下吧,今天还是主要以实践为主! web 端实时消息推送,常用的实现方式比较多,但万变不离其宗,底层基本上还是依赖于 websocket , MQTT 协议也不例外。 RabbitMQ 搭建 RabbitMQ 的基础搭建就不详细说了,自行百度一步一步搞问题不大,这里主要说一下两个比较重要的配置。 1、开启 mqtt 协议 默认情况下 RabbitMQ 是不开启 MQTT 协议的,所以需要我们手动的开启相关的插件,而 RabbitMQ 的 MQTT 协议分为两种。 第一种 rabbitmq_mqtt 提供与后端服务交互使用,对应端口 1883 。 rabbitmq-plugins enable rabbitmq_mqtt 第二种 rabbitmq_web_mqtt 提供与前端交互使用,对应端口 15675 。