当前位置: 首页 > news >正文

Ubuntu 中安装 RabbitMQ 教程

简介

RabbitMq作为一款消息队列产品,它由Erlang语言开发,实现AMQP(高级消息队列协议)的开源消息中间件。

应用场景

  1. 异步处理
    场景说明:用户注册后,注册信息写入数据库,再发邮件、短信通知。

  2. 应用解耦
    网上购物,用户提交订单后,订单系统需要通知库存系统。传统做法,

  3. 流量削峰
    前端加入消息队列。大批量用户请求到达后,写入消息队列,并设置最大阈值。超过该阈值的请求丢弃返回错误给客户端。系统只需要从消息队列中取正常的请求来进行处理即可。

安装

安装环境:Ubuntu 20.04,使用如下命令安装

** 更新安装包**

sudo apt-get update

安装Erlang

安装rabbitmq,由于rabbitmq需要erlang语言支持,所以需要安装erlang。

 apt-get install erlang

执行命令,查看erlang是否安装成功

erl

显示如下图即安装成功:
在这里插入图片描述
然后退出命令行:Ctrl + c

查看erlang与rabbitmq版本对应关系

https://www.rabbitmq.com/docs/3.13/which-erlang
在这里插入图片描述

安装 RabbitMq

查看版本

apt-cache madison rabbitmq-server  

在这里插入图片描述
开始安装

 apt-get install rabbitmq-server

执行命令查看安装结果

systemctl status rabbitmq-server

在这里插入图片描述

Rabbitmq允许web访问

增加远程登录账号

使用命令查看服务状态。
如果服务没有运行,尝试启动它:

systemctl start rabbitmq-server 
systemctl status rabbitmq-server
systemctl stop rabbitmq-server
# 或者
service rabbitmq-server start 
service rabbitmq-server status
service rabbitmq-server stop# 添加远程账号
rabbitmqctl add_user root root# 为账号设置权限
# role替换为 administrator,monitoring,management
# administrator,超级管理员角色,可以登录控制台查看所有信息,并可以对用户、策略操作
# monitoring,监控者角色,可以登录控制台查看rabbitmq节点相关信息,无法对策略管理
# management,普通管理者角色,仅可以登录控制台,无法看到节点信息
rabbitmqctl set_user_tags username role# 查看账户列表
rabbitmqctl list_users# 修改密码
rabbitmqctl change_password root root

ubuntu开放端口供外网访问:

rabbitmq-plugins enable rabbitmq_management
sudo ufw allow 15672
sudo ufw allow 5672

此时浏览器即可访问

http://IP:15672

显示登录页面如图:
在这里插入图片描述
然后输入刚刚设置的roo,roo进行登录

在这里插入图片描述

http://www.lryc.cn/news/511409.html

相关文章:

  • 如何测试模型推理精度:Python初学者指南
  • 人工智能与区块链的碰撞:双剑合璧的创新前景
  • 安装Visual studio2022后,没法新建.net 4.5.2的项目
  • 小程序配置文件 —— 12 全局配置 - pages配置
  • Flink Data Source详解
  • Spring Boot 介绍与应用
  • 并行编程实战——TBB框架的应用之五Supra中IGTL的应用
  • 【Golang 面试题】每日 3 题(八)
  • 11. 日常算法
  • FPGA三模冗余TMR工具(二)
  • springboot499基于javaweb的城乡居民基本医疗信息管理系统(论文+源码)_kaic
  • MF248:复制工作表形状到Word并调整多形状位置
  • 微信流量主挑战:用户破16!新增文档转换(新纪元3)
  • SelectionArea 实现富文本
  • upload-labs关卡记录17
  • 【Next.js】002-路由篇|App Router
  • 如何在 Ubuntu 22.04 上使用 systemctl 管理 systemd 服务教程
  • Springboot关于格式化记录
  • Android 自定义shell命令
  • Unity游戏环境交互系统
  • TOP K问题:利用堆排序找出数组中最小的k个数
  • 《信息传播:人工智能助力驱散虚假信息阴霾》
  • 数据权限和角色权限区别
  • Flink的多流转换(分流-侧输出流、合流-union、connect、join)
  • DirectUI属性表
  • RBAC权限控制
  • STM32高级物联网通信之以太网通讯
  • 【小程序】全局配置window和tabBar
  • 详解VHDL如何编写Testbench
  • 冥想的实践