本文转自:https://blog.csdn.net/xingxing513234072/article/details/51014850

一、文档资料

       1、官方网站:http://www.rabbitmq.com/
       2、安装教程:http://www.rabbitmq.com/install-windows.html
 
二、安装指南
      1、下载并按照OTP(必须在安装RabbitMQ Server前安装):http://www.erlang.org/download.html
            32位:OTP 17.5 Windows 32-bit Binary File (91.0 MB)
            64位:OTP 17.5 Windows 64-bit Binary File (91.1 MB)
      2、下载并安装RabbitMQ Server:http://www.rabbitmq.com/download.html
            选择windows平台,直接从官方链接下载,同时也可以从github上下载,安装完成后,服务自动启动(services.msc)
      3、下载并安装.Net客户端:http://www.rabbitmq.com/dotnet.html
             http://www.rabbitmq.com/releases/rabbitmq-dotnet-client/v3.5.1/rabbitmq-dotnet-client-3.5.1-dotnet-4.0.zip
              (选择的是.net 4.0版本,同时也可以通过nuget下载)
 
三、命令行工具
      1、定位到rabbitmq安装目录:
          windows 7   cd C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.5.1\sbin
          Widows Serve  cd /d C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.5.1\sbin
      2、执行rabbitmq命令行工具(rabbitmqctl ):
         rabbitmqctl -q status       //打印了一些rabbitmq服务状态信息,包括内存,硬盘,和使用erlong的版本信息
         rabbitmqctl list_queues     //查看所有队列消息
 
四、C#客户端使用

1、服务端代码

  1.  
    namespace Server
  2.  
    {
  3.  
    class Program
  4.  
    {
  5.  
    static void Main(string[] args)
  6.  
    {
  7.  
    var factory = new ConnectionFactory() { HostName = "localhost" };
  8.  
    using (var connection = factory.CreateConnection())
  9.  
    {
  10.  
    using (var channel = connection.CreateModel())
  11.  
    {
  12.  
    //定义队列(hello为队列名)
  13.  
    channel.QueueDeclare("hello", false, false, false, null);
  14.  
     
  15.  
    var consumer = new QueueingBasicConsumer(channel);
  16.  
    channel.BasicConsume("hello", true, consumer);
  17.  
     
  18.  
    Console.WriteLine(" [*] Waiting for messages." +
  19.  
    "To exit press CTRL+C");
  20.  
    while (true)
  21.  
    {
  22.  
    //接受客户端发送的消息并打印出来
  23.  
    var ea = (BasicDeliverEventArgs)consumer.Queue.Dequeue();
  24.  
     
  25.  
    var body = ea.Body;
  26.  
    var message = Encoding.UTF8.GetString(body);
  27.  
    Console.WriteLine(" [x] Received {0}", message);
  28.  
    }
  29.  
    }
  30.  
    }
  31.  
    }
  32.  
    }
  33.  
    }

2、客户端代码

  1.  
    namespace Client
  2.  
    {
  3.  
    class Program
  4.  
    {
  5.  
    static void Main(string[] args)
  6.  
    {
  7.  
    var factory = new ConnectionFactory() { HostName = "localhost" };
  8.  
    using (var connection = factory.CreateConnection())
  9.  
    {
  10.  
    using (var channel = connection.CreateModel())
  11.  
    {
  12.  
    //定义队列(hello为队列名)
  13.  
    channel.QueueDeclare("hello", false, false, false, null);
  14.  
    //发送到队列的消息,包含时间戳
  15.  
    string message = "Hello World!" + "_" + DateTime.Now.ToString();
  16.  
    var body = Encoding.UTF8.GetBytes(message);
  17.  
    channel.BasicPublish("", "hello", null, body);
  18.  
    Console.WriteLine(" [x] Sent {0}", message);
  19.  
    }
  20.  
    }
  21.  
    }
  22.  
    }
  23.  
    }
如果启动服务端前启动了客户端,消息就会存放到队列中,da
 
五、RabbitMQ GUID使用
       1、官方提供的一个web管理工具(rabbitmq_management)
       2、安装了Rabbitmq后,默认也安装了该管理工具,执行命令即可启动
            rabbitmq-plugins enable rabbitmq_management(先定位到rabbitmq安装目录)  
            
        3、启动后,直接在浏览器地址输入:http://localhost:15672/   账号密码都是:guest    
 
 

六、异常问题

1、None of the specified endpoints were reachable

生产端和消费端的factory参数要统一

  var factory = new ConnectionFactory();
  factory.UserName = QueueSetttiong.UserName; //用户名,对应Management工具的admin-->user
  factory.Password = QueueSetttiong.Password; //密码,对应Management工具的admin-->密码
  factory.HostName = QueueSetttiong.HostName; //本地部署服务直接用hostname即可
  factory.Port = AmqpTcpEndpoint.UseDefaultPort;
  factory.VirtualHost = QueueSetttiong.VirtualHost; //使用默认值: "/"
  factory.Protocol = Protocols.DefaultProtocol;

[转]Rabbitmq的使用及Web监控工具使用的更多相关文章

  1. Rabbitmq的使用及Web监控工具使用

    本文转载自:https://www.cnblogs.com/gossip/p/4475978.html windows安装手册请参考:http://www.rabbitmq.com/install-w ...

  2. 消息队列系列(二):.Rabbitmq的使用及Web监控工具使用

    一.文档资料        1.官方网站:http://www.rabbitmq.com/        2.安装教程:http://www.rabbitmq.com/install-windows. ...

  3. Web监控工具

    .Rabbitmq的使用及Web监控工具使用   一.文档资料        1.官方网站:http://www.rabbitmq.com/        2.安装教程:http://www.rabb ...

  4. Erlang Web 监控工具

    转自http://www.cnblogs.com/me-sa/archive/2012/04/17/erlang-web-monitor.html  Erlang已经提供了一系列工具查看运行时状态查看 ...

  5. rabbitmq启用和禁用web界面管理插件

    rabbitmq默认安装启动以后,是没有开启web管理界面的,通过rabbitmq-plugins list命令可列出插件的启用和禁用状态. 使用rabbitmq-plugins enable xxx ...

  6. rabbitMQ教程(五)rabbitmq 指令 以及解决web管理界面无法使用guest用户登录

    安装最新版本的rabbitmq(3.3.1),并启用management plugin后,使用默认的账号guest登陆管理控制台,却提示登陆失败. 翻看官方的release文档后,得知由于账号gues ...

  7. Django开发Web监控工具-pyDash

      今天发现了一个比较有意思的监控工具,是基于Django开发的,开发大牛已经开放了源代码,向大牛致敬,同时研究研究,目前感觉这个监控比较直观,可以针对个人服务器使用,同时涉及的环境比较简单,部署起来 ...

  8. Mycat Web监控工具

    简介 Mycat-web 是 Mycat 可视化运维的管理和监控平台,弥补了 Mycat 在监控上的空白.帮 Mycat 分担统计任务和配置管理任务.Mycat-web 引入了 ZooKeeper 作 ...

  9. 消息队列系列(三):.Rabbitmq Trace的使用

       一.什么是Trace        Trace是Rabbitmq用于记录每一次发送的消息,方便使用Rabbitmq的开发者调试.排错.可通过插件形式 提供可视化界面   二.Trace实现概况 ...

随机推荐

  1. 【洛谷P2584】【ZJOI2006】GameZ游戏排名系统题解

    [洛谷P2584][ZJOI2006]GameZ游戏排名系统题解 题目链接 题意: GameZ为他们最新推出的游戏开通了一个网站.世界各地的玩家都可以将自己的游戏得分上传到网站上.这样就可以看到自己在 ...

  2. Forward团队-爬虫豆瓣top250项目-开发文档

    项目地址:https://github.com/xyhcq/top250 我在本次项目中负责写爬虫中对数据分析的一部分,根据马壮分析过的html,我来进一步写代码获取数据,具体的功能及实现方法我已经写 ...

  3. 解决Ubuntu自带编译器不好使问题

    解决Ubuntu自带编译器不好使问题 1.删除Ubuntu自带的tiny版本,这个版本用起来很别扭不好使. 2.安装full版本的vim 3.显示效果:full版本. 之前自带的版本:

  4. 抄一篇maven的备忘

    标注下来源:http://www.trinea.cn/android/maven/ 由浅入深,主要介绍maven的用途.核心概念(Pom.Repositories.Artifact.Build Lif ...

  5. Web browser的发展演变

    我们每天都在使用着浏览器,每个人使用的浏览器各不一样.在这个科技飞速发展的时代,一个游览器能否站住脚跟取决于使用者的数量,看用户是否喜欢这个产品,听取用户们的意见来改善. 我们这个年龄的人最初用到的浏 ...

  6. VSCode插件开发全攻略(四)命令、菜单、快捷键

    更多文章请戳VSCode插件开发全攻略系列目录导航. 命令 我们在前面HelloWord章节中已经提到了命令写法,这里再重温一下. context.subscriptions.push(vscode. ...

  7. 背水一战 Windows 10 (98) - 关联启动: 使用外部程序打开一个文件, 使用外部程序打开一个 Uri

    [源码下载] 背水一战 Windows 10 (98) - 关联启动: 使用外部程序打开一个文件, 使用外部程序打开一个 Uri 作者:webabcd 介绍背水一战 Windows 10 之 关联启动 ...

  8. ProgressBar 进度条开源项目总结

    在Android开发中,我们不免会遇到进度条展示的需求,以下是本人之前star的开源项目,供大家参考: 一.ArcProgressBar 开源项目地址:https://github.com/zenoT ...

  9. 继承user表需要配置

    AUTH_USER_MODEL = 'users.User'   (应用名.模型类名)

  10. HTTP 协议常见首部字段

    首部字段 1.HTTP协议的请求和响应报文中必定包含HTTP首部.首部内容为客户端和服务器处理请求和响应提供了所必须的信息. 2.HTTP首部字段是由首部字段名和字段值构成,中间用冒号“:”隔开.字段 ...