消息推送平台-mePush
##项目演示地址:http://8.130.126.21:3000/
- mePush-common:公共方法
- mePush-cron:定时任务执行器
- mePush-handler:MQ消费者,业务处理
- mePush-service-api-impl:接入层实现类
- mePush-service-api:接入层
- com.tank.stream:数据清洗
- com.tank.support:MQ提供者,业务处理
- com.tank.web:SpringMVC
- com.tank.xxljob-master:定时任务调度器
只要有发送消息的需求,就可以使用本项目,具体场景如下:
1.广告商投放广告
2.验证码短信下发
3.通知类,警告类信息下发,例如某用户关注的主播开播了,系统警告线程池线程数达到阈值
1.不同渠道不同类型的消息发送 2.消息的全链路生命周期追踪
创建账号(选择渠道!!!接入姿势查看对应官方文档1.qq邮箱开启POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务即可 2.短信去对应渠道官网开通服务:https://console.cloud.tencent.com/smsv2 3.企业微信:https://developer.work.weixin.qq.com/document/path/91201):
创建模板(选择刚才创建的账号作为发送账号):
填写发送账号,标题和文案
项目配置文件在mePush-web下面的application.properties,你只需要安装对应软件,更改配置文件即可启动 启动mePush-web即可
Level1:发送消息功能 你需要部署MySql5.7.x + Redis + Kafka 参考:https://blog.csdn.net/weixin_42207486/article/details/80647802
Level2:消息全链路追踪 你需要部署Flink,并且提交stream代码 参考:https://blog.csdn.net/momo898821/article/details/105579464
Level3:定时任务,动态线程池。。。 你需要部署xxl-job 以及 Apollo 参考:https://www.jianshu.com/p/09ad73aece33
1.消息隔离
2.全链路追踪
两种角度:用户角度(给用户反馈为什么消息发送失败) + 模板角度(广告曝光量)
3.消息发送可靠性 限流,黑名单,渠道负载,消息重试,消息丢失等