返回项目列表 周建波

PROJECT CASE STUDY

多渠道消息推送中台

多渠道消息推送中台是基于 Java 的统一消息推送平台。

JavaSpringBootMySQLRedisKafka
多渠道消息推送中台 项目截图

PROJECT DETAILS

项目详情

围绕项目背景、个人职责与项目亮点,清晰呈现完整实践过程。

01 / CONTEXT

项目背景

多渠道消息推送中台是基于 Java 的统一消息推送平台,支持邮件、短信、飞书等多渠道消息发送,可作为组织内业务系统的通用消息组件,解决重复接入第三方渠道、发送链路分散和消息状态难追踪等问题。

02 / RESPONSIBILITY

个人职责

接口设计: 设计模板管理、消息发送和记录查询等统一HTTP接口,屏蔽底层渠道差异,降低业务接入成本。

异步中转: 设计 Kafka / MySQL 双中转模式,并通过高、中、低、重试队列实现优先级处理。

渠道扩展: 接入邮件、短信、飞书等渠道,基于策略模式实现渠道服务的统一路由与扩展。

性能优化: 通过 Redis 缓存和异步中转设计,本地压测入队吞吐达到3000+ QPS。

03 / HIGHLIGHTS

项目亮点

优先级设计: 支持多级队列,高优客户享受独立通道;优化MySQL中转场景下多级队列,解决低优饿死问题

定时推送: 基于 MySQL + Redis ZSet 二级存储实现定时推送,兼顾完整消息存储和高频扫描性能。

业务限额: 引入全局限额和业务限额,通过 Redis INCR + TTL 实现限流判断,避免单一业务占用大量资源。

失败重试: 引入重试队列和 retryCount 控制重试次数,提升第三方异常场景下的投递可靠性。

多渠道消息推送中台 · 周建波