RabbitMQ学习:①安装

朱治龙
2024-05-12 / 0 评论 / 27 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2024年05月12日,已超过186天没有更新,若内容或图片失效,请留言反馈。

背景

近期参与公司的在线充值业务的功能开发,该业务涉及多个系统交互,采用MQ的方式实现跨系统通讯:

使用MQ跨系统通讯

而在我既往的项目经验中还未使用过 MQ,便利用工作之余对相关的知识点进行补充学习。本系列内容即是我的一个0基础入门学习记录,仅做参考。

RabbitMQ 基本介绍

RabbitMQ 是一个由 Erlang 语言开发的 AMQP 的开源实现。Erlang是为电话交换机编写的语言,天然对分布式和高并发支持良好。

常用MQ对比

比较项RabbitMQActiveMQRocketMQKafka
公司/社区Broadcom Inc.Apache阿里Apache
开发语言ErlangJavaJavaScala&Java
协议支持AMQP,XMPP,SMTP,STOMPoPENwIRE,stomp,REST,XMPP,AMQP自定义自定义协议,社区封装了http协议支持
客户端支持语言官方支持Erlang,Java,Ruby,PHP,.NET,GO,JS等,社区产出多种API,几乎支持所有语言Java,C,C++,Python,PHP,Perl,.NET等Java,C++官方支持Java,社区产出多种API,如PHP,Python等
单机吞吐量万级(其次)万级(最差)十万级(最好)十万级(次之)
消息延迟微秒级毫秒级毫秒级毫秒以内
功能特性并发能力强,性能极其好,延时低,社区活跃,管理界面丰富老牌产品,成熟度高,文档较多MQ功能必要完备,扩展性佳只支持主要的MQ功能,主要为大数据领域场景

安装 RabbitMQ

为快速安装部署,使用 docker compose 方式运行,docker-compose.yaml文件内容如下:

services:
  rabbitmq:
    image: rabbitmq:management
    restart: always
    container_name: rabbitmq
    ports:
      - 5672:5672
      - 15672:15672
    volumes:
      - ./data:/var/lib/rabbitmq

使用 docker compose up -d 启动后,使用浏览器访问如下地址:http://localhost:15672/,显示如下界面则表示 RabbitMQ 运行成功:
RabbitMQ登录界面

在上面的登录界面使用 guest 作为用户名和密码登录,打开如下图所示的主界面:
RabbitMQ主界面

0

评论 (0)

取消