热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

C#.net使用RabbitMq讲解

一 环境搭建首先,由于RabbitMQ使用Erlang编写的,需要运行在Erlang运行时环境上,所以在安装RabbitMQ Server之前需要安装Erlang 运行时环境,可以到Erlang官网下
一 环境搭建

首先,由于RabbitMQ使用Erlang编写的,需要运行在Erlang运行时环境上,所以在安装RabbitMQ Server之前需要安装Erlang 运行时环境,可以到Erlang官网下载对应平台的安装文件。如果没有安装运行时环境,安装RabbitMQ Server的时候,会提示需要先安装Erlang环境。 安装完成之后,确保已经将Erlang的安装路径注册到系统的环境变量中。安装完Erlang之后,这个环境会自动设置,如果没有,在administrator环境下在控制台下面输入,也可以设置:

Setx ERLANG_HOME “D:\Program Files (x86)\erl6.3″

然后,去RabbitMQ官网下载RabbitMQ Server服务端程序,选择合适的平台版本下载。安装完成之后,就可以开始使用了。

现在就可以对RabbitMQ Server进行配置了。

首先,切换到RabbitMQ Server的安装目录:

在sbin下面有很多batch文件,用来控制RabbitMQ Server,当然您也可以直接在安装开始菜单中来执行相应的操作:

最简单的方式是使RabbitMQ以Windows Service的方式在后台运行,所以我们需要以管理员权限打开cmd,然后切换到sbin目录下,执行这三条命令即可:

rabbitmq-service install
rabbitmq-service enable
rabbitmq-service start

现在RabbitMQ的服务端已经启动起来了。

下面可以使用sbin目录下面的rabbitmqctl.bat这个脚本来查看和控制服务端状态的,在cmd中直接运行rabbitmqctl status。如果看到以下结果:

显示node没有连接上,需要到C:\Windows目录下,将.erlang.COOKIE文件,拷贝到用户目录下 C:\Users\{用户名},这是Erlang的COOKIE文件,允许与Erlang进行交互,如果执行后提示一下错误

再次执行rabbitmqctl status命令,此时报了另一个错误:

可能是登录账号的问题,我是用administrator账号登录服务器并安装rabbitmq的,rabbitmq也自动在C:\user\administrator下创建了一个.erlang.COOKIE文件,但是RabbitMQ服务启动的时候,执行者是local system account,如下图所示:

此时,我想到将RabbitMQ服务的启动账号改成administrator,果然,更改后重启服务,再次执行rabbitmqctl status,成功!具体操作如下图所示:

现在重复运行刚才的命令就会得到如下信息:

RabbitMQ Server上面也有用户概念,安装好之后,使用rabbitmqctl list_users命令,可以看到上面目前的用户:

可以看到,现在只有一个角色为administrator的名为guest的用户,这个是RabbitMQ默认为我们创建的,他有RabbitMQ的所有权限,一般的,我们需要新建一个我们自己的用户,设置密码,并授予权限,并将其设置为管理员,可以使用下面的命令来执行这一操作:

rabbitmqctl add_user yy hello!
rabbitmqctl set_permissions yy ".*" ".*" ".*"
rabbitmqctl set_user_tags yy administrator

上面的一条命令添加了一个名为yy的用户,并设置了密码hello!,下面的命令为用户yy分别授予对所有消息队列的配置、读和写的权限。

现在我们可以将默认的guest用户删掉,使用下面的命令即可:

rabbitmqctl delete_user guest

如果要修改密码,可以使用下面的命令:

rabbitmqctl change_password {username} {newpassowrd}

具体RabitMQ使用代码我就不说了 网上有很多教程


版权声明:本文为fsdad原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/fsdad/article/details/97277750
推荐阅读
author-avatar
用户3w7mnpewca
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有