C#用RabbitMQ实现消息订阅与发布
- 作者: 渐渐的贱贱的___
- 来源: 51数据库
- 2021-07-09
fanout交换机模型
扇形交换机,采用广播模式,根据绑定的交换机,路由到与之对应的所有队列。一个发送到交换机的消息都会被转发到与该交换机绑定的所有队列上。很像子网广播,每台子网内的主机都获得了一份复制的消息。fanout交换机转发消息是最快的。

rabbitmq控制台操作
新增两个队列
在同一个virtual host下新增两个队列q1,q2,如下图所示:

绑定fanout交换机
将两个队列绑定到系统默认的fanout交换机,如下所示:

示例效果图
生产者,采用fanout类型交换机发布消息,如下图所示:

当生产者发布 一条消息时,q1,q2两个队列均会收到,如下图所示:

当启动消费者后,两个消费者,均会订阅到相关消息,如下图所示:

核心代码
消息发布
建立连接后,将通道声明类型为fanout的交换机,如下所示:
消息订阅
建立连接后,通道声明类型为fanout的交换机,并绑定队列进行订阅,如下所示:
作者:alan.hsiang
出处:
以上就是c#用rabbitmq实现消息订阅与发布的详细内容,更多关于c#用rabbitmq实现消息订阅与发布的资料请关注其它相关文章!
推荐阅读
- C#通过fleck实现wss协议的WebSocket多人Web实时聊天(附源码)
- 团队城市未满足要求:MSBuildTools12.0_x86_Path 存在
- 使用 MSBuild.exe 在发布模式下构建 C# 解决方案
- 当我发布 Web 应用程序时,AfterPublish 脚本不运行
- 构建时 T4 转换的产品仅在下一个构建中使用
- ASP.NET Core Application (.NET Framework) for Windows x64 only error in project.assets.json
- 新的 .csproj 格式 - 如何将整个目录指定为“链接文件"到子目录?
- 如何将条件编译符号(DefineConstants)传递给 msbuild
- MSBuild 支持 Visual Studio 2017 RTM 中的 T4 模板
- NuGet 包还原找不到包,没有源
热点文章
团队城市未满足要求:MSBuildTools12.0_x86_Path 存在
0
使用 MSBuild.exe 在发布模式下构建 C# 解决方案
0
当我发布 Web 应用程序时,AfterPublish 脚本不运行
0
构建时 T4 转换的产品仅在下一个构建中使用
0
ASP.NET Core Application (.NET Framework) for Windows x64 only error in project.assets.json
0
新的 .csproj 格式 - 如何将整个目录指定为“链接文件"到子目录?
0
如何将条件编译符号(DefineConstants)传递给 msbuild
0
MSBuild 支持 Visual Studio 2017 RTM 中的 T4 模板
0
NuGet 包还原找不到包,没有源
0
使用 C# 6.0 功能运行 TFS 构建
0
