java邮件服务系统开发的_mail-micro-service是基于SpringBoot、JavaMail实现的邮件微服务系统...

mail-micro-service是一个使用SpringBoot和JavaMail实现的邮件微服务系统,支持轮询和加权轮询的多邮箱负载。该系统能够避免因频繁发送邮件而被标记为垃圾邮件,配置灵活,支持JDK1.8+和Maven3.0+。用户可以自定义配置文件,记录邮件发送日志,并提供了Docker部署方案。
摘要由CSDN通过智能技术生成

mail-micro-service

68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4a444b2d312e382b2d627269676874677265656e2e73766768747470733a2f2f696d672e736869656c64732e696f2f62616467652f537072696e67426f6f742d322e312e302d677265656e2e737667

项目介绍

mail-micro-service是基于SpringBoot、JavaMail实现的邮件微服务系统,支持以轮询、加权轮询方式负载多邮箱配置,提供邮件发送API。

开发需求

由于免费邮箱存在邮件发送数量和频率的上限,若发送频繁,可能会被邮件服务商判定为垃圾邮件(554 DT:SPM),因此采用多个免费邮箱轮询发送。

软件环境

JDK1.8+

Maven3.0+

配置说明

application-dev.properties

# 轮询方式:normal(轮询)、weighted(加权轮询)

mail.roundrobin.type=weighted

# 附件临时目录,linux下需要修改路径

file.folder=D://maindisk/temp

mailX.properties(X为从0开始的正整数,多个实例需顺序配置,中间不允许跳过)

# 邮箱host,这里以163为例

mail.smtp.host=smtp.163.com

mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory

# 某些云服务商因安全问题,不允许通过stmp 25端口发送邮件,因此使用465端口,采用SSL协议加密传输邮件

mail.smtp.socketFactory.port=465

# 进行身份验证

mail.smtp.auth=true

# 账号

mail.username=XXXX

# 授权码

mail.password=XXXX

# 标识

mail.id=mail0

# 启用标志

mail.isAvailable=true

# 加权轮询权重

mail.weight=2

# debug模式

mail.debug=false

系统会优先读取jar包同级目录的配置文件(自定义的mailX.properties也是),若没找到则会使用classpath下配置,推荐使用外部配置文件部署。

安装教程

安装JDK,配置Maven环境,Clone代码,配置邮箱账号授权码,编译打包工程,运行jar包。

mvn clean install -Dmaven.test.skip=true

java -jar target/mail-micro-service.jar

推送授权码并非邮箱密码,163/126邮箱获取方式请点我查看 ,QQ邮箱请点我查看,邮箱必须开启POP3/SMTP服务。

使用说明

多收件人,请使用;分隔收件人邮箱,更多使用详情见MailLocalhostTest.java

测试截图

ba71a535ab042f6af7939807fcec9a71.gif

源码托管

更新记录

v0.0.1 以轮询、加权轮询方式负载多邮箱配置,提供邮件发送API

v0.0.2 记录邮件发送日志,并提供查询页面

v0.0.3 添加Dockerfile

v0.0.2更新

配置日志切面,使用h2database存储发送日志,默认开启h2 console,可查看数据库信息,数据文件存储于同级目录/h2/mms下,可修改使用h2内存模式或者其他数据库配置,http://127.0.0.1:12345/api/v0.0.1/h2-console/

707d223db837d4053d880ebde9f83386.png

v0.0.3更新

添加Dockerfile,提供Docker部署方案。

手动拉取代码安装。

git clone https://github.com/hf-hf/mail-micro-service.git

cd mail-micro-service

./docker/docker-build.sh

./docker/docker-run.sh

快捷安装,拷贝Dockerfile-full,重名为Dockerfile。

docker build -t mail-micro-service ./

docker run --name mail-micro-service -e JVMXMX=1G -v /app/app-log:/app/app-log -v /app/h2:/app/h2 -p 12345:12345 -d mail-micro-service

若要使用外部配置文件,请将配置文件放置在Dockerfile同级目录的config文件夹下,并放开Dockerfile中的注释行。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值