第1篇 rabbitmq的安装和启动(brew)

rabbitmq的安装, brew方式

1、更新最新版本brew

  • brew update
    
  • 然后它会提示你执行如下语句

    • Error:
        homebrew-core is a shallow clone.
      To `brew update`, first run:
        git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
      This command may take a few minutes to run due to the large size of the repository.
      This restriction has been made on GitHub's request because updating shallow
      clones is an extremely expensive operation due to the tree layout and traffic of
      Homebrew/homebrew-core and Homebrew/homebrew-cask. We don't do this for you
      automatically to avoid repeatedly performing an expensive unshallow operation in
      CI systems (which should instead be fixed to not use shallow clones). Sorry for
      the inconvenience!
      
  • ##执行时间比较长,大概需要3分钟
    git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
    
  • 最后结果如下

    • image-20210602173128548

2、执行安装

  • 执行时间比较长,需要下载相关依赖,耐心等候就好了

  • brew install rabbitmq
    
  • 安装文件路径是在 /usr/local/Cellar/rabbitmq/<版本号>/ , 其实可以在/usr/local/opt/rabbitmq/sbin 进行访问,它也创建一个链接文件在(/usr/local/sbin)

  • image-20210602175318255

  • 建议加上在配置文件加上这个路径

    • vim ~/.bash_profile
      
      export PATH=$PATH:/usr/local/sbin
      
      ## 修改完之后就让配置生效
      source ~/.bash_profile
      
  • image-20210602175659811

3、启动和关闭rabbitmq

  • ## 启动rabbitmq
    brew services start rabbitmq
    
    ## 关闭rabbitmq
    brew services stop rabbitmq
    
    
  • image-20210602180626613

4、WEB的UI控制台

  • 应该这个控制台是插件形式提供,所以需要先把这个插件开启,执行如下命令

    •  rabbitmq-plugins enable rabbitmq_management
      
    • image-20210602201425946

  • 重启rabbitmq

    • brew services start rabbitmq
      
  • 输入localhost:15672 ,见到如下界面

    • image-20210602201326536
  • 添加账户和权限

    • ## 添加一个用户为test, 密码为test
      rabbitmqctl add_user test test
      
      ## 给test赋予UI管理员权限
      rabbitmqctl set_user_tags test  administrator
      
      ## 给test赋予服务权限
      rabbitmqctl set_permissions -p / test ".*" ".*" ".*"
      
      
  • 登录系统,会看到如下界面

    • image-20210602201733782

5、命令行创建exchange和queue

  • 你可以简单理解exchange类似路由器, queue就是一根根网线

  • 消息首先会到达exchange,然后exchange将消息分发到不同的queue中, 然后消费者消费不同queue,所有我们需要创建exchange(交换器) 和queue(队列)

  • image-20210602204443693

  • 还要说一下rabbitmq有虚拟主机概念,有点类似有linux不同用户看到不同home目录一样,互不干扰,这里需要创建一个虚拟主机,消息隔离

5.1、创建虚拟主机

  • ## 添加虚拟主机 test_host
    rabbitmqctl add_vhost test_host
    
    ## 赋予可以查看角色,guest是可以看到的
    rabbitmqctset_permissions -p test_host guest ".*" ".*" ".*"
    
  • 执行如上语句将会看到如下结果

    • image-20210602210158791

5.2、创建exchange(交换器)

  • ## 在test_host创建 一个交互器 test_exchange, 类型为直连
    rabbitmqadmin declare exchange --vhost=test_host name=test_exchange type=direct
    
    
  • image-20210602210624757

5.3、创建Queue(队列)

  • ## 在test_host创建一个队列名称为 test_queue
    rabbitmqadmin declare queue --vhost=test_host name=test_queue durable=true 
    
  • image-20210602210907175

5.4、exchange和queue进行绑定

  • 如果细心的话我们都是在vhost下创建对象,也就是与vhost有关联,它们本身是没有关联的,这个时候需要将它们关联起来,(将网线插到路由器上)

  • rabbitmqadmin --vhost=test_host declare binding source=test_exchange destinati_type=queue destination=test_queue routing_key=test_routing_key
    

5.5、发送消息验证的一下

  • ## 发送一个消息为hello,world
    rabbitmqadmin publish exchange=test_exchange routing_key=test_routing_key payload="hello, world" --vhost=test_host 
    
  • image-20210602214137612

5.5、获取消息

  • rabbitmqadmin get --vhost=test_host queue=test_queue ackmode=ack_requeue_false --username=test --password=test
    
  • 可能会报,后面在看到

    • *** Access refused: /api/queues/test_host/test_queue/get
      
    • 2021年06月03日 fix 解决这个异常,因为原因是没有赋予test, vhost权限

    • 需要执行如下命令

    • ## 赋予test所有消息权限,新增消息之类
      rabbitmqctl set_permissions -p test_host test ".*" ".*" ".*"
      
    • 在执行上面语句将会看到如下结果

    image-20210603172225287

6、总结和回顾

  1. 学习一下rabbitmq的brew方式安装
  2. rabbitmq启动 和web控制界面
  3. rabbitmq的vhost,exchange,queue,创建
  4. 消息验证
  5. 仔细发现语法
    1. rabbitmqadmin 行为 属性名1=属性值1 属性名2=属性值2 。。。
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
RabbitMQ 是一个开源的消息中间件,它实现了高效的消息队列,使得各个应用程序之间可以快速、可靠地传递消息。下面是 RabbitMQ安装和使用步骤: 1. 安装 Erlang RabbitMQ 是用 Erlang 语言编写的,因此需要先安装 Erlang。可以在 Erlang 官网下载对应的版本安装包,并按照提示安装。 2. 安装 RabbitMQ 可以在 RabbitMQ 官网下载对应的版本安装包,并按照提示安装安装完成后,可以通过访问 http://localhost:15672 来访问 RabbitMQWeb 管理界面。 3. 启动 RabbitMQ 在 Linux 系统下,可以使用以下命令启动 RabbitMQ: ``` sudo systemctl start rabbitmq-server ``` 在 Windows 系统下,可以在安装目录下找到 sbin 目录,然后执行以下命令启动 RabbitMQ: ``` rabbitmq-server.bat ``` 4. 创建队列 可以使用 RabbitMQWeb 管理界面来创建队列,也可以使用 RabbitMQ 的命令行工具来创建队列。以命令行方式为例,可以使用以下命令创建一个名为 'hello' 的队列: ``` sudo rabbitmqctl add_queue hello ``` 5. 发送消息 可以使用 RabbitMQ 的命令行工具来发送消息。以命令行方式为例,可以使用以下命令发送一条消息到 'hello' 队列: ``` sudo rabbitmqctl publish hello "Hello, RabbitMQ!" ``` 6. 接收消息 可以使用 RabbitMQ 的命令行工具来接收消息。以命令行方式为例,可以使用以下命令接收 'hello' 队列的消息: ``` sudo rabbitmqctl get_message hello ``` 以上是 RabbitMQ安装和使用简要步骤,更详细的内容可以参考 RabbitMQ 官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值