先来个官方教程

http://www.rabbitmq.com

在windows 下 命名 去掉sudo 我是在windows下测试 用net调用

常用命令

控制台命令:sudo rabbitmqctl#只能在root权限下使用

本地节点默认被命名为”rabbit”。可以通过这个命令前使 用”-n”标志明确的指定节点名称, 例如:

sudo rabbitmqctl -n rabbit@hostname **** 控制台命令

启动:sudo rabbitmq-server start

启动应用:sudo  rabbitmqctl start_app

停止应用:sudo rabbitmqctl stop_app

停止rabbitmq:sudo rabbitmqctl stop

显示RabbitMQ中间件各种信息:sudo rabbitmqctl status

重置RabbitMQ节点:
sudo rabbitmqctl reset

sudo rabbitmqctl force_reset

用户管理
添加用户
sudo rabbitmqctl add_user username password
删除用户
sudo rabbitmqctl delete_user username
修改密码
sudo rabbitmqctl change_password username newpassword

列出所有用户

sudo rabbitmqctl list_users  
创建虚拟主机
sudo rabbitmqctl add_vhost vhostpath

删除虚拟主机

sudo rabbitmqctl delete_vhost vhostpath

列出所有虚拟主机
sudo rabbitmqctl list_vhosts
设置用户权限

sudo rabbitmqctl set_permissions [-p vhostpath] username regexp regexp regexp

example:sudo rabbitmqctl set_permissions -p vhostname testuser ".*" ".*" ".*"

清除用户权限
sudo rabbitmqctl clear_permissions [-p vhostpath] username
列出虚拟主机上的所有权限
sudo rabbitmqctl list_permissions [-p vhostpath]
列出用户权限

sudo rabbitmqctl list_user_permissions username

列出全部队列,exchanger,binder

sudo rabbitmqctl  list_queues [-p <vhostpath>] [<queueinfoitem> ...]
   list_exchanges [-p <vhostpath>] [<exchangeinfoitem> ...]
   list_bindings [-p <vhostpath>] [<bindinginfoitem> ...]
   list_connections [<connectioninfoitem> ...]
   list_channels [<channelinfoitem> ...]
   list_consumers [-p <vhostpath>]

环境搭建

环境还是简单的说下

1、从官方下载http://www.rabbitmq.com/download.html 服务版本

2、没有erlang需要下载http://www.erlang.org/download.html

3、启动服务

4、验证是否成功

sudo rabbitmqctl status

简单消息(Hello World)

发送消息

static void Main(string[] args)
        {
            var factory = new ConnectionFactory();
            factory.HostName = "Localhost";
            factory.UserName = "shuzhengyi";
            factory.Password = "shuzhengyi";

while (true)
            {
                using (var connection = factory.CreateConnection())
                {
                    using (var channel = connection.CreateModel())
                    {
                        channel.QueueDeclare("hello", false, false, false, null);
                        string message = "Hello World";
                        var body = Encoding.UTF8.GetBytes(message);
                        channel.BasicPublish("", "hello", null, body);
                        Console.WriteLine(" set {0}", message);
                        Console.ReadLine();
                    }
                }
            }           
        }

接受消息

public static void Main()
        {
            var factory = new ConnectionFactory() { HostName = "localhost" };
            factory.UserName = "shuzhengyi";
            factory.Password = "shuzhengyi";
            using (var connection = factory.CreateConnection())
            {
                using (var channel = connection.CreateModel())
                {
                    channel.QueueDeclare("hello", false, false, false, null);

var consumer = new QueueingBasicConsumer(channel);
                    channel.BasicConsume("hello", true, consumer);

Console.WriteLine(" [*] Waiting for messages." +
                                             "To exit press CTRL+C");
                    while (true)
                    {
                        var ea = (BasicDeliverEventArgs)consumer.Queue.Dequeue();

var body = ea.Body;
                        var message = Encoding.UTF8.GetString(body);
                        Console.WriteLine(" [x] Received {0}", message);
                    }
                }
            }
        }

运行结果

最新文章

  1. Android 短信监听及用途分析
  2. PHP控制div块大小和颜色的例子
  3. iOS 指定圆角个数
  4. ubuntu-12.10-server中打开终端的方式
  5. WCF binding的那些事!!!
  6. 闲扯json取值,联想map取值。
  7. 教你一招 - 如何给nopcommerce做一套自己的主题
  8. 二叉查找树的懒惰删除(lazy deletion)
  9. hdu 2795 线段树(纵向)
  10. MFC 如何改变对话框按钮上的文字
  11. 安装pip工具
  12. 如何选择面向移动设备的html5开发框架
  13. (译+注解)node.js的C++扩展入门
  14. spark-sql分组去重总数统计uv
  15. JavaScript选择点击
  16. 关于用tesseract和tesserocr识别图片的一个问题
  17. OpenEXR的采样机制
  18. 【Graphite】Graphite常用函数使用
  19. unix时间戳time_t与UTC时区的关系
  20. Scala中的foreach forall exists map函数及其区别

热门文章

  1. 【Thread】线程工厂-ThreadFactory
  2. Java中的Random()函数-----转载
  3. 洛谷 P1579 哥德巴赫猜想(升级版)
  4. [HAOI2015]按位或(FWT)
  5. LeetCode记录之7——Reverse Integer
  6. CentOS7 下使用 Nginx
  7. AngularJs依赖注入写法笔记
  8. POJ 2983 M &#215; N Puzzle
  9. EntityFramework 并发处理
  10. Mocoserver使用介绍