为什么要做短信中台

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 用于保存黑名单手机号,如果发送的是黑名单的手机号,不予发送

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一种简单的实现方法: 1. 在管理后台的页面中添加一个按钮,用于触发模态框的显示。 2. 在模态框中添加一个文本框,用于输入短信内容。 3. 在模态框的底部添加两个按钮,一个用于提交输入的短信内容,另一个用于关闭模态框。 4. 当用户点击提交按钮时,获取文本框中的值,并向后台发送请求,将短信内容保存到数据库中。 5. 当用户点击关闭按钮时,隐藏模态框。 以下是一个基本的HTML代码示例: ``` <!-- 短信内容输入的模态框 --> <div class="modal fade" id="smsModal" tabindex="-1" role="dialog" aria-labelledby="smsModalLabel"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title" id="smsModalLabel">输入短信内容</h4> </div> <div class="modal-body"> <div class="form-group"> <label for="smsContent">短信内容:</label> <input type="text" class="form-control" id="smsContent" placeholder="请输入短信内容"> </div> </div> <div class="modal-footer"> <button type="button" class="btn btn-primary" onclick="submitSMS()">提交</button> <button type="button" class="btn btn-secondary" data-dismiss="modal">关闭</button> </div> </div> </div> </div> <!-- 触发模态框的按钮 --> <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#smsModal">发送短信</button> ``` 在JavaScript中,可以通过以下代码获取输入的短信内容并提交到后台: ``` function submitSMS() { var smsContent = document.getElementById("smsContent").value; // 向后台发送请求,将短信内容保存到数据库中 // ... // 隐藏模态框 $("#smsModal").modal("hide"); } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值