为什么要做短信中台

本文介绍了搭建短信中台的原因,包括减少重复代码和确保服务稳定性。系统架构分为接收服务、管理后台和服务发送三部分,采用分布式设计以优化资源利用。系统包含多种表,如通道、签名、模板等,用于管理和跟踪短信发送。此外,还有日志记录和人工处理机制,以应对发送失败和黑名单管理。
摘要由CSDN通过智能技术生成

1.昨天我们完成了环境的搭建,了解了为什么我们要做这么一个短信中台 因为如果每个服务都要重复的去发送短信的话,这样的重复代码会非常的多,并且一旦我们的短信服务商挂了,那么我们的服务就发不出短信了,短信平台能够对接很多这样的服务商,在服务不稳定的时候进行自动的切换

总结:为什么要搭建短信平台?

a)将重复的代码剥离,形成中台的组件
b)一旦我们的短信服务商不好用了,我么短信平台能够自动的选举出新的通道,不会让我们的系统服务停止

2)我们的短信平台的系统架构是什么样的?是如何确定的?

接收服务:pd-sms-api 主要用于接收公司内部需要调用集信达平台的请求
管理后台:pd-sms-manage 维护短信通道配置信息,签名配置信息,模板配置信息,接入平台的配置信息,查看日志,人工处理
发送服务:pd-sms-server api服务接收到发送请求后,讲数据传递给server服务,server服务确定调用的第三方服务 如:阿里云,网易云信 并发送短信

首先要确定集信达是如何提供服务的,需要调用集信达平台的服务发送请求到集信达,集信达平台经过自己的业务处理,发送请求到真正的短信服务商。如:阿里云,网易云信

假如我们采用单体架构是什么样的,随着业务的增加,我们需要横向拓展我们的服务,这个时候我们拓展了所有的内容,很明显如果管理后台进行了拓展,就造成了系统资源的浪费
我们选择使用分布式的方式来进行系统架构,将系统拆解成 api接收发送短信的请求 manage 用来做后台的管理 server用来将api服务筛选过后的请求发送给短信服务商
这样做的好处是:

a)在做横向拓展的时候,我们可以不必拓展manage服务
b)api服务和server服务的压力是不一样的,因为业务的复杂度不通,我们可以更合理的使用服务器资源

3)我们的系统中有哪些表?为什么要有这些表?

举例: 公司内部服务:学成在线,立可得 集信达短信平台 第三方短信服务商:阿里云,梦网

a)通道表 config ,签名表 signature,模板表 template 因为阿里云定义了 签名和模板 对应的用户有ak,sk秘钥 同样梦网也定义了这样的规范
而通道表里存储的信息就是 ak sk endpoint 关于短信服务平台相关的配置信息
签名表:学成在线和立可得 需要在我们的系统中配置,对应的需要为其创建签名
模板表:学成在线和立可得 需要在我们的系统中配置,对应的需要为其创建模板

b)通道表和签名表的关系表 config_signature – 多对多 记录学成在线,立可得系统和签名的关系,
在阿里云和学成在线的这条数据中需要有:阿里云中配置的学成在线的签名
在阿里云和立可得的这条数据中需要有:阿里云中配置的立可得的签名

c)通道表和模板表的关系 config_template – 多对多 记录学成在线,立可得系统和模板的关系,
在阿里云和学成在线的这条数据中需要有:阿里云中配置的学成在线的模板ID
在阿里云和立可得的这条数据中需要有:阿里云中配置的立可得的模板ID

d) 应用平台表:platform
每当有新的系统需要对接集信达平台的时候我们需要提供一个身份的识别,这个身份识别的数据记录在接入平台表中
记录了 学成在线、立可得 在集信达平台中的认证key和认证秘钥

e)发送日志表 send_log :server服务发送请求到阿里云或梦网的时候的时候需要记录 由server服务记录

f)接收日志表 receive_log:每一次学成在线和立可得发送请求到集信达的时候都要记录 由api服务记录

g)人工处理表 manual_process : 每当短信发送失败的时候将发送失败的信息保存在人工表里,由人工来进行发送

h) 黑名单表:black_list 用于保存黑名单手机号,如果发送的是黑名单的手机号,不予发送

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值