PROJECT DETAILS
项目详情
围绕项目背景、个人职责与项目亮点,清晰呈现完整实践过程。
01 / CONTEXT
项目背景
多渠道消息推送中台是基于 Java 的统一消息推送平台,支持邮件、短信、飞书等多渠道消息发送,可作为组织内业务系统的通用消息组件,解决重复接入第三方渠道、发送链路分散和消息状态难追踪等问题。
02 / RESPONSIBILITY
个人职责
接口设计: 设计模板管理、消息发送和记录查询等统一HTTP接口,屏蔽底层渠道差异,降低业务接入成本。
异步中转: 设计 Kafka / MySQL 双中转模式,并通过高、中、低、重试队列实现优先级处理。
渠道扩展: 接入邮件、短信、飞书等渠道,基于策略模式实现渠道服务的统一路由与扩展。
性能优化: 通过 Redis 缓存和异步中转设计,本地压测入队吞吐达到3000+ QPS。
03 / HIGHLIGHTS
项目亮点
优先级设计: 支持多级队列,高优客户享受独立通道;优化MySQL中转场景下多级队列,解决低优饿死问题
定时推送: 基于 MySQL + Redis ZSet 二级存储实现定时推送,兼顾完整消息存储和高频扫描性能。
业务限额: 引入全局限额和业务限额,通过 Redis INCR + TTL 实现限流判断,避免单一业务占用大量资源。
失败重试: 引入重试队列和 retryCount 控制重试次数,提升第三方异常场景下的投递可靠性。