Artuhs

austin
ZhongFuCheng3yUpdated Aug 15, 2024

功能

配置

  1. 渠道账号
  1. 消息模板

使用

单条
批量

监控

渠道、用户维度消息发送

send入口

BaseHandler

初始化各个渠道,下游各个渠道实现分发

图解

Question :为什么发个消息需要MQ?
Answer:发送消息实际上是调用各个服务提供的API,假设某消息的服务超时,austin-api如果是直接调用服务,那存在超时风险,拖垮整个接口性能。MQ在这是为了做异步和解耦,并且在一定程度上抗住业务流量。
Question:能简单说下接入层做了什么事吗?
Questionaustin-streamaustin-datahouse的作用?
Answeraustin-handler在发送消息的过程中会做些通用业务处理以及发送消息,这个过程会产生大量的日志数据。日志数据会被收集至MQ,由austin-stream流式处理模块进行消费并最后将数据写入至austin-datahouse
Questionaustin-adminaustin-webaustin-cron的作用?
Answerautsin-adminaustin项目的前端项目,可通过它实现对管理消息以及查看消息下发的情况,而austin-web则是提供相关的接口给到austin-admin进行调用(austin项目是前后端分离的)
业务方可操作austin-admin管理后台调用austin-web创建定时发送消息,austin-cron就承载着定时任务处理的工作
notion image
notion image
notion image
notion image
notion image

技术栈

技术栈
实现
编程语言
Java(JDK 1.8)
项目管理工具
Maven 3.x
集成开发工具
IDEA 2022
部署服务器
Centos 7.6
系统部署工具
Docker & Docker-compose
项目环境
SpringBoot 2.5.6
关系型数据库
MySQL 5.7.X
缓存数据库
Redis:lastest
ORM框架
SpringData JPA 2.5.6
分布式定时任务框架
XXL-JOB v2.3.0
分布式配置中心
Apollo & Nacos
消息队列
Kafka & RabbitMQ & RocketMQ
分布式日志采集框架
Graylog
分布式计算引擎
Flink 1.16.0
监控采集组件
Prometheus
监控可视化组件
Grafana
数据仓库
Hive 2.3.2
大数据环境
Hadoop 2.7.4
大数据可视化
Metabase:lastest
前端技术
Amis

工程模块

工程模块
作用
austin-common
项目公共包:存储着项目公共常量/枚举/Bean
austin-support
项目工具包:对接中间件/组件
austin-cron
定时任务模块:对xxl-job封装和项目定时任务逻辑
austin-web
后台管理模块:提供接口给前端调用
austin-service-api
消息接入层接口定义模块:只有接口和必要的入参依赖
austin-service-api-impl
消息接入层具体实现模块:真实处理请求
austin-handler
消息处理逻辑层:消费MQ下发消息
austin-stream
实时处理模块:利用flink实时处理下发链路数据
austin-data-house
数据仓库模块:消费MQ数据写入hive
Loading...
目录
文章列表
王小扬博客
产品
Think
Git
软件开发
计算机网络
CI
DB
设计
缓存
Docker
Node
操作系统
Java
大前端
Nestjs
其他
PHP