C#.NetCore RabbitMQ和ErLang安装使用

Posted 木衍大师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#.NetCore RabbitMQ和ErLang安装使用相关的知识,希望对你有一定的参考价值。

RabbitMQ和ErLang安装使用

1 RabbitMQ的优缺点

1.1 优点

以时间换空间:以更长的时间来处理堆集的业务逻辑
1、异步处理:响应很快,增加服务器承载能力
2、削峰:将流量高峰分解到不同的时间段来处理
3、扩展性:UI和业务的解耦,可以独立演化
4、高可用:处理器发生异常后,不会影响可用性

1.2 缺点

1、即时性降低,降低用户体验,无法避免
2、使程序更加复杂了

1.3 RabbitMQ和ErLang版本对应关系

RabbitMQ版本最低要求Erlang/OTP版本最高要求Erlang/OTP版本
3.11.8     3.11.7     3.11.6
3.11.5     3.11.4     3.11.3
3.11.2     3.11.1     3.11.0
25.0 25.2
3.10.17     3.10.16     3.10.14 24.3 25.2
3.10.13     3.10.12     3.10.11
3.10.10     3.10.9     3.10.8
24.2 25.2
3.10.7     3.10.6     3.10.5 23.2 25.2
3.10.4     3.10.2
3.10.1     3.10.0
23.2 24.3

2 环境准备

2.1 Erlang 和RabbitMQ下载安装

提示:不建议去官网下载,费时费力,博主用了一天时间,老是访问不了官网
RabbitMQ Windows 3.11.8 + Erlang windows 25.2.2安装包: CSND下载

2.1.1 Erlang 配置

  1. Erlang 语言运行环境RabbitMQ运行的必要条件
    Erlang 安装包: 官网下载
    安装文件夹名称不能有空格和中文字符
  2. 配置环境变量
    ERLANG_HOME :E:\\RuanJian\\Erlang\\ErlangOTP\\erts-13.1.4 (Erlang安装地址)
    Path : %ERLANG_HOME%\\bin

2.1.1 RabbitMQ 配置

  1. RabbitMQ 安装包: 官网下载
    安装文件夹名称不能有空格和中文字符
  2. 配置环境变量
    RABBITMQ_SERVER: E:\\RuanJian\\RabbitMQ\\rabbitmq_server-3.11.8 (找到文件存放位置)
    Path : %RABBITMQ_SERVER%\\sbin
  3. 执行命令
    1、管理员身份运行的cmd(命令提示符)

    2、执行: rabbitmq-service.bat remove

    3、执行:set RABBITMQ_BASE=E:\\RuanJian\\RabbitMQ\\rabbitmq_server-3.11.8\\data(这是自定义路径)

    4、执行:rabbitmq-service.bat install

    5、执行:rabbitmq-plugins enable rabbitmq_management

    6、执行:rabbitmq-service start

    7、打开网址访问 http://localhost:15672/
          默认账号guest 密码 guest

3 RabbitMQ 工作模式

3.1普通工作模式

生产者发送消息到RABBITMQ,再由消费者进行消费

3.2工作队列模式

生产者发送消息到RABBITMQ,然后由多个消费者这对消息进行消费,可以根据消费者能力设置RABBITMQ每次分发消息梳理

3.3发布/订阅模式

一个生产者,一个交换机,多个队列,多个消费者组成,
做到一次发布,多个消费者消费

3.4 路由模式

在发布/订阅模式基础上,通过routing路由进行匹配判断是否满足接收消息

3.5主题模式

同样是在发布/订阅模式的基础上,根据主题匹配进行筛选是否接收消息,比第四类更灵活。
topics主题模式跟routing路由模式类似,只不过路由模式是指定固定的路由键routingKey,而主题模式是可以模糊匹配路由键routingKey,类似于SQL中=和like的关系

以上是关于C#.NetCore RabbitMQ和ErLang安装使用的主要内容,如果未能解决你的问题,请参考以下文章

rabbitmq单机和集群部署

rabbitmq单机和集群部署

rabbitmq单机和集群部署

RabbitMQ入门

rabbitMQ和对应的erlang版本匹配

rabbitMQ和对应的erlang版本匹配