利用SpringBoot+RabbitMQ,实现一个邮件推送服务

每天早上七点三十分,准时推送干货

最近一直在学习RabbitMQ,但是不知如何在实际业务中撸出它的功效,最近刚好看到一篇相关案例,有一些心得,想和小伙伴们分享一下!

一、先来一张 RabbitMQ 流程图

本文内容主要围绕这个流程图展开,利用 RabbitMQ 消息队列,实现生产者与消费者解耦,所以有必要先贴出来,涵盖了 RabbitMQ 很多知识点,如:

  • 消息发送确认机制

  • 消费确认机制

  • 消息的重新投递

  • 消费幂等性, 等等

二、实现思路

  • 1.在虚拟机创建一个CentOS7上,并安装 RabbitMQ

  • 2.开放QQ邮箱或者其它邮箱授权码,用于发送邮件

  • 3.创建邮件发送项目并编写代码

  • 4.发送邮件测试

  • 5.消息发送失败处理

三、RabbitMQ安装

RabbitMQ 基于 erlang 进行通信,相比其它的软件,安装有些麻烦,不过本例采用rpm方式安装,任何新手都可以完成安装,过程如下!

3.1、安装前命令准备

输入如下命令,完成安装前的环境准备。

yum install lsof  build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc xz wget vim
3.2、下载 RabbitMQ、erlang、socat 的安装包

本次下载的是RabbitMQ-3.6.5版本,采用rpm一键安装,适合新手直接上手。

先创建一个rabbitmq目录,本例的目录路径为/usr/app/rabbitmq,然后在目录下执行如下命令,下载安装包!

  • 下载erlang

wget www.rabbitmq.com/releases/erlang/erlang-18.3-1.el7.centos.x86_64.rpm
  • 下载socat

wget http://repo.iotti.biz/CentOS/7/x86_64/socat-1.7.3.2-5.el7.lux.x86_64.rpm
  • 下载rabbitMQ

wget www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5-1.noarch.rpm

最终目录文件如下:

3.3、安装软件包

下载完之后,按顺序依次安装软件包,这个很重要哦~

  • 安装erlang

rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm
  • 安装socat

rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm
  • 安装rabbitmq

rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm

安装完成之后,修改rabbitmq的配置,默认配置文件在/usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/ebin目录下。

vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/ebin/rabbit.app

修改loopback_users节点的值!

最后只需通过如下命令,启动服务即可!

rabbitmq-server start &

运行脚本之后,如果报错,例如下图!

解决办法如下:

vim /etc/rabbitmq/rabbitmq-env.conf

在文件里添加一行,如下配置!

NODENAME=rabbit@localhost

然后,再保存!再次以下命令启动服务!

rabbitmq-server start &

通过如下命令,查询服务是否启动成功!

lsof -i:5672

如果出现5672已经被监听,说明已经启动成功!

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值