上一篇讲了如何再控制台将RocketMQ跑起来,本篇讲解,在asp.net mvc种跑起来,含(发布、订阅)。
因篇幅过长,本次将不挨个贴源码,直接展示目录,根据上一篇文章,进行相应的调整即可。
1、新建一个类库,将MQ公共部分提出来(源码在入门篇1中有讲解和截图):
如:
此时需要注意的有两点:
(1)在RocketMQClientManager中,尽量将IRocketMQManager做成单例,避免每发一次消息,就实例化一个对象造成资源浪费。
(2)经测试,在RocketMQClientManager中发送消息时,遇到并发可能会存在消息丢失问题,防止消息丢失,可以在发布的时候,进行加锁处理。
注意:FarseerBootstrapper.Create().Initialize(); //必须注册MQ服务,否则运行会抛出,未注册MQ服务啥。
发布、订阅运行结果:
注意、注意、注意:
1.需要将项目统一编译成X64、并且将项目寄宿到IIS,里边即可正常运行。在VS里边运行,是跑不起来的!
2.作者不推荐在服务端进行订阅,如果在IIS上运行,则可以将订阅模块提出来写成windows服务。
大家根据自己的业务场景自行甄别及其使用。
以上如有不对的,可以拍砖,相互学习,共同进步。
欢迎加入.NET CORE/ASP.NET CORE 技术交流群,我们期待你的加入。
群号:702566187
from:https://blog.csdn.net/weixin_37207795/article/details/81023914