高弹性、高性能SMS网关--突变流量应对实战
如果无法正常显示,请先停止浏览器的去广告插件。
1. 高弹性、高性能SMS网关
——突变流量应对实战
阿里云 云通信架构师 / 张松然
2.
3. 困知勉行
——
出自《论语》
2011年加入京东,2019年进入阿里云,一直工作在网关实时通信方
向,先后负责过 APP、SMS 网关的开发,专注于云原生高可用架构
演进,目前担任融合通信方向的架构师。
4. 目录
• 01
SMS通信的不断演变
• 02 架构重塑
• 03 性能之巅
• 04 未来展望
5. Part 1.
• SMS通信的不断演变
6. 挑战:突变流量如何确认SMS网关稳定高效?
SMS短信网关是通信网络中负责收发短信的核心系统
5万级
10万级
峰值高
(QPS)
并发量大
预留成本
突变流量
周期流量
5千级
资源量(核)
7. 重点:引入云原生和弹性架构的升级密钥
CUSTOMER
1992年
世界上第一条短信
发送成功
SMS GW
2001年
中国短信业务量
189亿条
USER
SMS CENTER
2008年
中国短信业务量
5900+亿
2017年
阿里云通信起步
2020年
阿里云通信
双11支撑十万级
QPS
8. 重点:引入云原生和弹性架构的升级密钥
高可用,分钟级故障隔离及恢复 高性能,低延迟,秒级触达 低成本,负载感知,弹性可伸缩
网关 组网/路由 管控
Networking/Routing Management and control
实现全球多地域的通信线路&通信资源的快速
接入,以及组网、路由、线路规划等 实现全球通信网络节点建设&多Region集群部
署,以及CloudOps运维能力
Gateway
提供稳定、安全、低延时的实时音视频通信、
短信通信服务
客户
网络 云原生K8s容器化环境 阿里云Serverless容器化环境
专线 接入网关 应用网关
安全
资源
负载
边缘站
协议/转码
信令/媒体
服务边车/代理
地域站
资源
互通
中继/转发
数据分发
中心管控和组网
中心站
中心站
业务编排
地域站
边缘站
9. 目的:实战架构选择、成本控制和性能保障
网关&管控
组网&管控
华东融合接入
华南融合接入
高可用(多Region)
主备多活 & 分钟级故障隔离
跨区、跨国家高可用切换
细化完善网关全链路的监控指标
高弹性(低成本)
中心弹性扩缩容(最优利用率)
控制与作业解耦,网关云原生+微服务
中心基于流量实现负载感知弹性伸缩
地域节点可热部署
节点可热部署化,具备垂直弹性伸缩
有状态节点基于连接弹性可伸缩
2019
集群规模化
多活负载
积压调度
CMPP/SMPP/SIP
东南亚融合接入
…
API/Queue
欧洲融合接入
SDK
云原生通信网关
云原生生态
安全类
组件
Appstack
IaC+容器
通信网关
IP Sec
ACL
PVL+CEN
多地域
部署
全球加速
华东售卖
高可用
组件
通信作业内核
WAF
文本/媒体
Gateway Kernel
多协议
转化
华南售卖区
CloudOps
资源
共享
多租户
管理
XX售卖区
2021
资源云化
国际化
稳定性治理
2022
云架构升级
轻量级网关
多级重试
重点围绕接入能力提升,
高可用构建能力矩阵
重点突破
高弹性、低成本
多路动态智能路由 & 低延迟
Arms Nacos 国际化(可扩展)
国际售卖区
云原生底座 + 异构云部署支持
支持规模化运维管控,全球多云组网
智能化就近接入地域节点
基于实时链路探测实现动态选路规划
网络健康度检测模型,治理逃生策略
调整网关路由算法减少发送耗时
大规模使用网关多次重试优化发送质量
NoSQL
负载容灾
管控
CLoudOps
弹性可伸缩
香港售卖区
MQ
可观测质量
组网/路由
路由算法
自定义连接数
重点覆盖&低延迟
微服务生态
信令控制层(配置/数据中心)
安全组网(高性能)
标准模块化 & 全球一体化架构
支持国际站快速建站,支持异构云部署
支持差异化业务模块编排和组装
2023
规模化上云
统一通信网
高弹性
2024
运维智能化
CloudOps
低成本
10. Part 2.
• 架构重塑
11. 传统架构的局限,为何我们需要变更?
网关管理系统
ECS
可扩展性有限
节点管理
Node Manager
可靠性 & 容错性
网关单体架构 ECS
更新不灵活
Security & Safety
Monitoring & Control
消息/通信总线
Service Bus
阿里云内部业务应用系统
数据处理
Data Processing
集中式系统出现单点故障和风险更高,
局部问题可能影响整个服务的可用性
运营商
业务处理模块
Biz Processing
紧耦合的架构很难采用新技术,随着业
务增长和系统演进,传统架构变得越来
越复杂,导致维护难度提高
s
技术负债 &系统维护成本高
客户
客户
节点管控
Node Controller
传统架构难以水平扩展,处理不了大量
并发用户和动态变化的负载
一个小的需求也需要重新部署整个应
用,增加了发布的复杂性和风险
资源管理
Channel Manager
性能瓶颈
在用户基数大福增长的情况下,旧有架
构往往无法有效支撑
客户
成本控制困难
因为业务的波动性,可能大多数时间资
源都未得到充分利用,但在业务激增时
又不能很好满足
12. 云原生与弹性,为SMS网关注入新活力
上云发展
与演进
2020~2022 上云1.0
2023~2024 上云2.0
Rehost
Re-platform & Re-architect
2024~未来 上云3.0
显著特点 国际站 “探索式” 上云
业务直接搬迁云上
依靠个人能力,且缺少工具的支撑 更加理性的上云,选择最优路径,助力业务发展
新的技术、架构
直接在云上新建系统
安全合规,容灾的要求 让云发挥更大的生产力
核心系统、稳定性、可靠性更高
构建以云为基础的新能力
能力要求 复杂架构的上云 云原生技术架构、容灾高可用 持续提升云效率
技术目标与计划
容器化与微服务
推动应用容器化,以及服务的微服务化分割,
从而提升应用的灵活性和开发效率
持续集成/持续部署(CI/CD)
升自动化构建、测试和部署流程,减少上线时
间和降低部署风险
DevSecFinOps整合
在DevOps的基础上,集成安全性设计,确保
整个应用开发流程的安全性
弹性伸缩和自动化
利用Serverless等先进的容器编排能力,提高资源的动态
调度能力,实现自动化的伸缩、自愈和部署
统一的服务网格
实现服务网格技术在组织中的广泛应用,以统一微服务间
的连接、监控和安全性
增强的监控和可观测性
扩展工具和平台的监控功能,使性能数据的收集和分析更
为全面和深入
商业目标和价值
提升业务敏捷性
通过云原生架构的灵活性,快速响应市场变
化,实现新功能和服务的快速迭代
降低成本
通过自动化和优化资源利用率,降低基础设施
成本和人工运维成本
改善交付体验
通过快速部署和持续交付,利用云原生提供的
高可用性和低延迟服务,增强交付满意度
13. 全球融合通信网络
国际M中心站
通信云站点建设
国际K中心站
国际N节点
控制面
短信
语音
隐私号
号码认证
号码百科
中心站
国内A节点
国际D节点
(控制面+数据面+传输面)
地域站
中国中心站
数据面
(数据面+传输面)
统一接入 统一接入 统一接入
调度决策 调度决策 调度决策
应用网关 应用网关 应用网关
接入网关 接入网关 接入网关
国内B节点
国际B中心站
边缘站
(传输面)
传输面
边缘加速
边缘加速
边缘加速
全球融合通信网络架构
边缘加速
国际X站点
14. 低成本架构,不只是技术,更是策略
24种中间件使用占比
nacos
成本占比
polardb
polardb
oss
redis
rocketmq
rocketmq
redis
nls/eip/nat
nls/eip/nat
6%
polardb
39%
redis
6%
rocketmq
11%
控本
vipserver
scheduleX
vip
redis
tbshedule
bpms
notify
zookeeper
mns
lindorm
config
slb
eip
mqt
vpn
nat
其它
其它
11%
dubbo
pandara
ecs
ecs
27%
应用网关
保证架构合理成本最优
提质 安全
业务可持续&稳定 安全合格隔离
面向中心/地域站部署 接入网关 面向地域/边缘站部署 网关/边缘加速
规模化 异构资源 全球加速
全球业务多分组隔离
多国多Region部署
无状态
无状态弹性伸缩
资源无损平滑迁移
面向边缘站部署
标准化/虚拟化/资源共享
异构稀缺资源接入能力 全球覆盖/秒级触达
网络安全加固/边缘网络
多云部署 就近部署
基于云原生容器化部署
边缘节点/VPN网关
15. 高弹性SMS网关
了解为什么SMS网关的高弹性是关键,特别是在处理突发或不规则流量时
固定资源
资源层
应用层
通用应用弹性模型
指标弹性(CPU 内存)
定时弹性
领域应用弹性模型
HPV 水平伸缩 Keda 事件驱动伸缩
VPA 垂直伸缩 Knative 无服务弹性框架
Cron HPA 定时伸缩 Elastic 精细化调度弹性
AHPA 预测弹性伸缩 领域弹性
通用资源弹性模型
基础设施
通用基础设施弹性模型
Cluster auto scaler
节点自动伸缩 云存储自动扩容
CSI
ACK / Serverless ASK
无服务自动伸缩 数据库自动扩容
Polar DB
16. 高可用设计确保无间断服务
了解云原生技术、微服务架构和容器化等技术在SMS网关中的应用,以及这些技术如何提高服务的可靠性和扩展性
接入网关
Polar DB
P1
Cluster auto scaler
节点自动伸缩
业务数据处理
提交/回执
重试
转历史
CHPA
CSI
P1
P2
P3
HPA
ACK / Serverless ASK
无服务自动伸缩
Elastic
业务处理模块
P3
消息回调
VPA
P2
理
统
消息推送
客户
客户
客户
客户
应用网关
17. 高弹性SMS网关背后的部署策略
了解阿里云云通信如何成功实现并部署高弹性的SMS网关,以及在此过程中的挑战和解决方案
应用PaaS系统
阿里云云上集群
应用Serverless系统
应用K8s系统
数据库系统
阿里云A独立VPC
CLB/SLB
Aone
客户B独立VPC
DNS
EIP
EIP
Ingress
NAT网关
Appstack
Private Zone
ASO
虚拟交换机VSwitch
虚拟交换机VSwitch
虚拟交换机VSwitch
弹性网卡
eni 弹性网卡
eni 弹性网卡
eni eni eni eni eni eni
Pod Pod Pod Pod Pod
弹性网卡
eni
弹性网卡
eni
全托管产品VPC
DevOps/GitOps
K8s全托管集群
Image
独立VC
Master
阿里云弹内集群
应用ECS系统
数据库系统
公共VC
Koastline
Serverless全托管集群
Master
Slave
Serverless 资源池
K8s 资源池
驻外资源池
IDC IDC ESC CVM CVM
云盘 云盘 云盘 云盘 云盘
ACR
镜像服务
18. 高可用设计确保无间断服务
了解云原生技术、微服务架构和容器化等技术在SMS网关中的应用,以及这些技术如何提高服务的可靠性和扩展性
高可用
配置热更新
服务动态降级
限流
熔断保护和超时控制
监控告警
容灾演练
易地多活
19. Part 3.
• 性能之巅
20. 高弹性SMS网关背后的高性能架构与优化策略
内部:链路耗时优化
高性能网关
细分耗时统计 解决内部埋点和失准问题
路由引擎(通道虚拟化、多协议转化、流量转发与控制、多租户管理) 传输耗时优化 压缩传输比率进行传输加速
CMPP2.0/CMPP3.0/SMPP/SGIP/SMGP/MNS协议对接开放(出口)
短信发送耗时 1秒
边缘站
对客发送 地域节点 入口网关
10~
100ms
10~
100ms
100ms
对客回执 地域节点 入口网关
10~
100ms
10~
100ms
100ms
边缘站
接入层 调度层 出口网关 地域节点 对供发送
100ms 100ms 100ms 10~
100ms 10~
100ms
出口网关 地域节点 对供回执
100ms 10~
100ms 10~
100ms
回执中心
100ms
CMPP2.0/CMPP3.0/SMPP/MNS开放(入口)
弹内QPS
优化网关积压
实时探测QPS协同调度弹性调度
网关多级重试优化和积压链路
外部:供应商耗时优化
通道质量管理 解决内部埋点和失准问题
实时探测QPS 压缩传输比率进行传输加速
通道质量画像 实时探测QPS协同调度弹性调度
21. 高弹性SMS网关背后的高性能架构与优化策略
了解云原生技术、微服务架构和容器化等技术在SMS网关中的应用,以及这些技术如何提高服务的可靠性和扩展性
策略1:云网架构双向反馈环调度
场景调度
资源调度
决策调度
DISPATCH QPS
决策调度
决策因子
决策资源
QPS 控制器
QPS
控制器
策略2:多级重试积压阻塞反馈调度
节点调度
通信网关
MMSGW QPS
出口网关
路由调度
连接调度
运营商资源
异步回源重试
未发送积压
(千万)
有效通道
未响应积压
(万)
通道资源
策略3:负载感知路由寻址调度
平均 QPS
通道资源
真实探测
QPS 控制器
性能
度量器
地域
网关
通道资源
三因子模型
应用网关
22. 高弹性SMS网关背后的高性能架构与优化策略
了解云原生技术、微服务架构和容器化等技术在SMS网关中的应用,以及这些技术如何提高服务的可靠性和扩展性
23. Part 4.
• 未来展望
24. 未来展望
LLM
FaaS
BaaS
AI & Low Code 技术为代表
Serverless
GitOps
Serverless 技术为代表
微服务
DevOps
Docker
Kubernetes 技术为代表
快速集成和高效搭建
通过标准化、组件化以及编排技术,实现基于通信传输接入的快速
定制构建能力
结合AI和LLM,构建Smart网关,提供实时的流量分析、自然语言
交互和自动化管理,大幅提升网络的效率、安全性和用户体验
高弹性和高性能
无状态中心基于流量弹性可伸缩,有状态边缘基于连接弹性可伸缩
基于实时链路探测实现动态选路规划,智能化就近接入节点
规模化和高可用
支持多可用区AZ部署 & 容灾演练,跨区、跨国家高可用机制
接入网关作为客户/供应商的接入点, 应用网关作为内部的接入点
25.