RabbitMq 学习

rabbitMQ 初步了解

rabbitMQ 基本使用

rabbitMQ 与 springboot 集成

安装

安装 erlang

  • 这里建议按照 rabbitMQ 官网的方法,安装只与 MQ 有关的 erlang ,我这里用的版本是 22.x
  1. 新建一个文件 /etc/yum.repos.d/rabbitmq-erlang.repo
  2. 可以参考这个rabbitMQ-erlang安装指导官网
    将如下内容放入刚才新建的文件中
# In /etc/yum.repos.d/rabbitmq_erlang.repo
[rabbitmq_erlang]
name=rabbitmq_erlang
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

[rabbitmq_erlang-source]
name=rabbitmq_erlang-source
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
  1. 然后执行 yum
yum install erlang
  1. 在执行下命令,验证安装是否完成
[root@rabbit-mq home]# erl
Erlang/OTP 22 [erts-10.4.4] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]

Eshell V10.4.4  (abort with ^G)

安装 rabbitMQ

  1. 新建一个文件 /etc/yum.repos.d/rabbitmq.repo
  2. 内容如下
[bintray-rabbitmq-server]
name=bintray-rabbitmq-rpm
baseurl=https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.7.x/el/7/
gpgcheck=0
repo_gpgcheck=0
enabled=1
  1. 可以参考 rabbitMQ 官网的安装指导理解以下安装顺序
#导入签名
[root@192 yum.repos.d]# rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
[root@192 yum.repos.d]# yum install rabbitmq-server
# 开机启动
[root@192 yum.repos.d]# chkconfig rabbitmq-server on
#配置web管理界面
[root@192 yum.repos.d]# rabbitmq-plugins enable rabbitmq_management
#重启RabbitMQ服务
[root@vdevops bin]# systemctl restart rabbitmq-server.service

注意 导入签名可能会不成功,多尝试几次,或者换成rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc这个也行

  1. guest账户无法远程登录
    就算是本机不使用127.0.0.1或localhost也无法登录。
    据查说是3.3版本后不允许远程使用guest登录,解决办法是修改
    目录 /usr/lib/rabbitmq/lib/rabbitmq_server-3.7.12/ebin/rabbit.app文件中的
    {loopback_users, [<<“guest”>>]},项目,删除其中的<<“guest”>>。
    然后保存并重启rabbitmq
  2. 可以打开使用 http://安装rabbitmq环境的ip:15672,默认 username:guest,password:guest,访问
  3. spring boot 连接 rabbitmq 环境,远程连接的时候,可能会出现连接超时异常,TimeoutException
    • 为什么会连接超时?
      一般 centos 安装时会给你设置一个默认主机名,然而我们安装时,都会改成比较好看一点的,比如 centos6/centos_node1 其实问题就出在这里,因为修改后的主机名并没有在 linux 系统的 hosts 文件中,因此解析的时候,无法直接从该文件中获取,需要多重解析,才能解析该主机名。
    • 解决方法
      使用 vim /etc/hosts 命令对hosts文件进行添加一行数据,以主机名centos6为例,只需在hosts文件中加入 127.0.0.1 centos6,然后保存退出即可。重启rabbitmq,应该就能解决连接超时的问题了。

RabbitMQ 如何保证消息不丢失?

RabbitMQ 的好处

参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值