消息队列ActiveMQ 点对点模型和发布订阅模型,使用.net_apache.nms+ stomp.js 或 mqttws31.min.js实现
ActiveMQ安装及部署
下载地址 http://activemq.apache.org/components/classic/download/
运行 activemq.bat,在浏览器输入 http://localhost:8161/admin/ (账户:admin 密码:admin)出现如下界面表示启动成功
ActiveMQ的消息传送模型
1)点对点模型(Point to Point)
使用队列作为(Queue)作为消息通信载体,满足消费者和生产者模式,一条消息只能被一个消费者使用,消息保证送达,离线消费者可以在下次登录时接收到积压的消息
》一个消息只能被一个服务接收
》消息一旦被消费,就会消失
》如果没有被消费,就会一直等待,直到被消费
》多个服务监听同一个消费空间,先到先得
2)发布订阅模型(Publish/Subscribe)
使用主题作为消息通信载体 (可能会造成部分消息的丢失)
<1>普通订阅:当前有几个消费者在线就发送几条消息给客户端
<2>持久化订阅:区分消费者:消费者在线则直接发送消息给在线客户端,消费者不在线只要有topic登记,那么就会为其保留数据直至其登陆一次性把积压数据推送过去。
》一个消息可以被多个服务接收
》订阅一个主题的消费者,只能消费自它订阅之后发布的消息。
》消费端如果在生产端发送消息之后启动,是接收不到消息的,除非生产端对消息进行了持久化(例如广播,只有当时听到的人能听到信息)
代码实现
.net平台 通过Nuget安装ActiveMQ


使用stomp.js实现通信
使用mqttws31.min.js进行通信
源码地址:
https://pan.baidu.com/s/1m78Cbuxmr0BY5svGRuJFDA
qq:505645074