合集-C# RabbitMQ学习笔记

摘要:一、引言 RabbitMQ是Rabbit Message Queue的简写,但不能仅仅理解其为消息队列,消息代理更合适。RabbitMQ是一个由 Erlang 语言开发的AMQP(高级消息队列协议)的开源实现,其内部结构如下: RabbitMQ作为一个消息代理,主要和消息打交道,负责接收并转发消息。 阅读全文
posted @ 2020-03-29 12:01 缥缈的尘埃 阅读(906) 评论(0) 推荐(1)
摘要:一、环境搭建 1.1、由于RabbitMQ是使用Erlang语言开发的,因此要安装Erlang运行时环境,下载地址:Erlang官网下载 CSDN分享下载 1.2、去RabbitMQ官网下载RabbitMQ Server服务端程序,选择合适的平台版本下载并安装。 RabbitMQ安装时,会自动在Wi 阅读全文
posted @ 2020-04-03 17:12 缥缈的尘埃 阅读(1119) 评论(0) 推荐(0)
摘要:一、环境准备 假设有两台服务器: 注意事项: 1)所有服务器的Erlang及RabbitMQ版本必须一样。 2)服务器名大小写敏感。 二、开始搭建 2.1、设置hosts文件 路径如下:C:\Windows\System32\drivers\etc 在hosts文件中添加主机及备机的IP地址及计算机 阅读全文
posted @ 2020-04-08 17:24 缥缈的尘埃 阅读(1235) 评论(0) 推荐(2)
摘要:一、引言 fanout类型的Exchange,路由规则非常简单:它会把所有发送到该Exchange的消息,路由到所有与它绑定的Queue中。假设有一个聊天室,各个客户端都订阅在同一fanout exchange type,那每个客户端发送出来的消息,所有的客户端都能收到,因为大家都订阅了。此时,只需 阅读全文
posted @ 2020-04-10 10:41 缥缈的尘埃 阅读(1098) 评论(0) 推荐(0)
摘要:一、引言 在具体业务中可能会遇到一些要提前处理的消息,比如普通客户的消息按先进先出的顺序处理,Vip客户的消息要提前处理。在RabbitMQ中,消息优先级的实现方式是:在声明queue时设置队列的x-max-priority属性,然后在publish消息时,设置消息的优先级即可。 RabbitMQ优 阅读全文
posted @ 2020-04-11 09:33 缥缈的尘埃 阅读(1247) 评论(0) 推荐(0)
摘要:一、引言 日常生活中,很多的APP都有延迟队列的影子。比如在手机淘宝上,经常遇到APP派发的限时消费红包,一般有几个小时或24小时不等。假如在红包倒计时的过程中,没有消费掉红包的话,红包会自动失效。假如上述行为使用RabbitMQ延时队列来理解的话,就是在你收到限时消费红包的时候,手机淘宝会自动发一 阅读全文
posted @ 2020-04-11 16:08 缥缈的尘埃 阅读(1832) 评论(4) 推荐(1)
摘要:一、引言 使用工作队列的一个好处就是它能够并行的处理队列。如果堆积了很多任务,我们只需要添加更多的工作者(workers)就可以了,扩展很简单。本例使用多线程来创建多信道并绑定队列,达到多workers的目的。 二、示例 2.1、环境准备 在NuGet上安装RabbitMQ.Client。 2.2、 阅读全文
posted @ 2020-04-14 13:40 缥缈的尘埃 阅读(3071) 评论(4) 推荐(0)