通过ServiceBroker实现订阅(Publish- Subscribe)框架发布【个人总结】

看完这篇文章

Service Broker实现发布-订阅(Publish-Subscribe)框架 

亲自动手实践了一下,从中发现了一些问题和经验

 

这个框架的主要思路是 发布方如果想发布一条信息,首先必须向发布队列(PublisherQueue) 发布一条请求消息,告诉发布队列我要发送哪类主题的消息

在发布方向发布队列发送请求消息后,会在队列里面有条记录,最重要的是Conversation这个字段是一个GUID类型的,他代表了每一次会话时候的句柄,通过这个句柄

再发送消息的时候是相当于给发布方的响应消息,这个消息会跑到AuthorQueue队列中去,当然在这里没有用

然后当订阅方想要订阅消息时,首先向 发布队列(PublisherQueue) 发布一条请求订阅消息,告诉发布队列我要订阅那类主题的消息

在订阅方向发布队列发送订阅请求消息后,在队列里产生的 Conversation是发送到订阅队列的句柄

 

我的思路是,把请求信息和订阅信息分别存放在两个不同的表中Publication和Subscribtion中  ,然后增加一个消息发送表

就是发送方所要发送的消息列表存放到一个表中,这个表的主键是发送句柄,我们首先会循环读取队列中的数据,里面有发送请求和订阅请求

 

我们通过Subject关联两个表,获得所有的发送句柄,然后读取待发送的消息循环发送到订阅队列中

 

我们还可以写个实时读取订阅队列的服务程序或控制台程序,来监测每一个消息!

 

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值