• 微信:WANCOME
  • 扫码加微信,提供专业咨询
  • 服务热线
  • 0769-23063100
    13027920428

  • 微信扫码访问本页

亿级消息中心架构方案

旺道.商弈 -> 正文

目标

技术目标: 上行到消息队列api吞吐量10000条/秒,下发第三方平台1000条/秒(仅平台自身处理能力,第三方看第三方处理能力极限指标为准);保证消息中心100%高可用。

业务目标: 对接新需求,明确消息中心的负责人(架构组),及时响应业务处理或者反馈。

产品目标: 支持消息处理状态查询,简单的消息规范消息对接(初级开发5分钟实现接入成本),规范化消息模板办理。

 

需求原型

功能需求:

支持阿里云短信,微信公众号,app推送,统一站内信,企业微信(应用,个人)等第三方推送。

包含消息模板管理,账户管理,消息搜索,批量消息发送等。

 

技术方案

业务部署交互图


业务核心逻辑交互图

技术选型

优势

缺点

rocketmq

【性能好】单个吞吐量能达10万/秒,并行推送能力(消费能力)可以通过rocketmq的分区(分区细节需要设计)数量进行扩展。性能上面是一个亮点和优势

【部分功能不支持】一旦进入rocketmq队列,推送消息不可撤回。很多数据库层面的功能特性(mq不支持)在设计上就会舍弃。

es

【性能好】可以支撑上亿的数据量的关键词搜索,实时同步的性能和吞吐量都还可以。

【并发插入能力略差】假设消息下发吞吐量高,需要批量对消息进行同步,这样可以优化es吞吐量。高并发对es同步,es承载能力可能会出问题(可以投入测试进行验证)。

 

概要设计描述

1. rocketmq 设计正常消息队列(正常投递消息),重试消息队列(支持多种延迟机制,发送失败重试的消息),发送结果消息队列(发送超限或者成功的消息)。

2. es 同步以上三种队列的消息,以最终一致性(最晚时间戳校验)保持消息信息最新。

3. mysql 仅支持管理模板,账号等基础管理功能。

 

底层框架设计、运维层面描述

1. 统一网关

spring cloud gateway/kong,仅做api层面的路由支持。

2. 基础框架: 选定jar包版本,es,rocketmq,实时报警,性能监控 对这些接口做二次封装,es支持sql模式插入查询;rocketmq做底层实现剥离。

参考: bsf 统一基础框架 
https://gitee.com/yhcsx/csx-bsf-all

3. 业务框架: 标准输入输出http rpc等业务框架工具或协议层面支持。

4. 服务高可用:k8s&docker 及devops 线上一体化部署的支持,要做到一键发布,一键回滚,滚动发布,不停机发版。


出处:https://www.cnblogs.com/chejiangyi/p/14884931.html

短视频矩阵推广 企业运营方案

一、企业为什么要做短视频矩阵?单账号风险大企业要做短视频矩阵,主要是为了避免单一账号存在的风险。一旦账号出现限流、降权或封号等情况,企业将失去该

适合美术机构、书法培训机构管理软件有哪些功能特点

美术、书法培训机构,是除了音乐、舞蹈、机器人编程等教育培训机构以外,提升孩子美学和文化艺术素养的素质教育机构。一家中小型的美术、书法机构,可能已

深圳大卖重金招ChatGPT人才,开出35k!

在众多行业中,跨境电商已成为ChatGPT的最强应用领域之一,从注册、使用到发现弊端,跨境人迅速完成初体验并将其用于工作。

程序员三大基础思维简谈:协议、接口和分层

不管是硬件设备、软件概念或者是网络通讯中,协议、接口无处不在,软件系统离不开分层模型。协议和分层,各种课程都有涉及,但可惜的是,很多计算机类专业

与人交往“最精明”的方式,不是请客吃饭,而是给他们3样东西

现实里,结交一个人的最好方法,是什么?其实现实里,成年人都需要了解一点这种知识。否则,光靠自己的技能,恐怕路不好走。

轻松掌握 RAID 配置:各大品牌服务器攻略(保姆级教程)

RAID 0 级别:比如服务器设备上有 4 块 4T 硬盘,配置 RAID 0 后,这4块硬盘就变成了一个整体,也就是4块硬盘 * 4T = 1... ...

系统思维——拥有看穿本质的能力

系统思考帮助我们打破原有的思维定式,纵观全局,看清事物背后的结构和逻辑,才能解决现实世界中的复杂问题——《系统思考》丹尼斯·舍伍德你一定遇到过这... ...

2024流量共生,公域做规模,私域要复利

公域和私域是共生关系,在单独探讨一方时候总不自觉地思考与另一方的关系和联动。有很多企业两者之间会有所侧重,比如重公域销售,跑通投产比就持续放大,... ...

打造个人商业IP,理清赚钱逻辑

做个人商业IP是一门稳赚不赔的生意,它是把你现有资源、业务、知识、流量、能力、经验等,加了一个超级杠杆,做了一次乘法。... ...

生意有术(NO.12):生意千万条,务实第一条

个人经验是这样的,在合作之前,我会做大量的背调,从公司、老板、产品等搜集到足够多的信息。我不会用百度去搜新闻,看官网,这些信息没多大参考价值,有... ...

分布式架构和微服务架构的区别

1、含义不同微服务架构是一种将一个单一应用程序开发为一组小型服务的方法,每个服务运行在自己的进程中。分布式系统是若干独立计算机的集合,这些计算机... ...

系统运维日常巡检都做什么-8大步骤

系统运维日常巡检是确保服务器和网络正常运行的重要任务。正常情况下系统运维日常巡检的步骤和程序:步骤一:检查硬件服务器状态:确认服务器是否在线,运... ...

SaaS ERP和传统ERP的区别在哪里?

SAAS是什么SaaS,Software-as-a-Service,软件即服务。说白了就是指用户不用再购买软件,而改用向软件提供商租用基于Web... ...

36w字!腾讯高工甩出MySQL速成手册,基础架构调优三飞

想要精通MySQL你就必须知道如何设计一个高可用可扩展的企业级MySQL数据库集群以及高性能高可用MySQL调优方法。但大多数人对于MySQL的... ...

华为发布了跨平台开发的ArkUI-X,我不允许你学不会!

就在8月7日开源鸿蒙 OpenHarmony 4.0 Beta2 发布,多平台开发框架 ArkUI-X 首发。首先介绍下啥是 ArkUI:Ark... ...

桌面应用开发常用技术栈

开发电脑桌面应用可以使用多种技术栈,具体选择取决于开发者的需求和偏好。以下是一些常见的技术栈:前端开发技术栈:通常使用桌面应用开发框架,如Ele... ...

Ideogram:一款秒杀Midjourney,免费无限生成的AI绘画神器

导读:Ideogram AI是一个文本生成图片的平台,它最大的优点就是好用、免费又没有生成限制,因此可以秒杀MJ和SD。AI绘画是人工智能领域的... ...