国产香蕉尹人综合在线观看,精品一区二区三区少妇蜜臀,图片区偷拍区小说区五月,久久青青草原精品国产app,久久精品国产精品亚洲,久久久综合九色合综,亚洲18禁一区二区三区,亚洲一区二区三级av
              短信服務平臺SMSSDK進化之路和架構思路 2019-04-09 16:59:31 分類:公司動態
              相關標簽:         短信接口         群發短信         106短信平臺         手機短信驗證碼接口         國際短信         網站在線客服系統
              SMSSDK3.0在主體架構上沒有做太大的改動,主要在業務上做了很多的優化工作。最終目的是縮短開發者集成SDK的時間,提升速碼云平臺的服務品質。 在3.0中,主要做了以下升級:

               

              短信服務平臺SMSSDK進化之路和架構思路

               

               

               

              SMSSDK 是可以叫應用快速、免費擁有手機驗證功能的SDK。幫助開發者減少大量的開發工作,幫助企業節省短信群發費用。


              SMSSDK到現在為止經歷1.0到3.0幾十個版本的迭代升級,已經非常穩定和高效。
              這個過程中有:


              · sdk的bug修復,性能提升,安全性提升。


              · sdk發送驗證碼部分收費到完全免費的升級。

              · 功能逐漸豐富的過程


              · 服務端架構調整


              SMSSDK的初始版本在效能和穩定性上有太多的不足和缺失。這些問題主要集中的服務端,下面我來介紹一下SMSSDK服務端的進化之路。

               


              一、SMSSDK1.0版本

               


              · 問題


              1. 效能性:經常出現發送短信延遲或者失敗的情況;


              2. 穩定性:服務不夠穩定,需要經常重啟服務保證服務的相對正常運行;


              3. 可用性:開發者反饋問題后,技術支持解決時間較長;


              · 原因


              在1.0時期的服務器架構有一些不合理的地方導致出現了上面的問題。下面我會根據架構圖介紹當時的架構細節,如圖:

               

               

              短信接口觸發交流圖

               

               

               


              如圖中所示從SDK到負載均衡這一階段沒有太大的問題,可以繼續保持使用。
              問題主要出現在一下三個方面:


              · 業務服務


              · 數據中轉


              · 數據存儲

               


              業務服務

               


              1. 所有業務耦合在一起,經常因為一個不重要的業務流程執行緩慢導致整個驗證碼發送、校驗業務緩慢或崩潰;


              2. 服務間通信采用普通的HTTP接口交互,且依賴度很高,互相影響較大;


              3. 服務的容錯性較低;


              4. 通道單一,當通道出問題后服務不可用。


              數據中轉


              使用單臺Redis作為消息隊列中轉數據。


              redis作為消息隊列時,經常出現內存不足的情況,導致前面的服務響應緩慢或不響應。


              因此,還延伸出了離線處理數據的多個輔助程序,增加維難度。


              數據存儲


              1.存儲數據介質多樣:MongoDB,Redis,HBase,Elasticsearch。增加系統復雜度,增加維護成本;


              2.存儲介質穩定性低,且異常處理缺失,導致一些數據丟失;

               


              3.日志信息記錄不全,查找問題困難


              上面的架構給開發,運維,技術支持帶來巨大的工作量,非常影響SMSSDK的服務質量,加上SMSSDK免費業務線確定,決定對服務器架構進行重構,由此誕生了SMSSDK2.0。


              一、SMSSDK2.0版本


              此版本主要解決1.0版本中存在的各種問題,旨在為開發者提供更快,更穩定,更豐富功能的SDK。
              架構圖:

               

               

               

              短信平臺架構圖

               


              1.訪問層使用Nginx做負載均衡;
              2.服務層:要求服務間互不影響或影響較小。將之前的一個服務拆分為:
              o 基礎服務:查多寫少的服務,要求響應迅速;
              o 短信發送、校驗服務:發送驗證碼短信,校驗驗證碼短信。
              o 其他服務:其他開發者可選集成的服務。
              o Web服務:開發者服務器接口服務。
              o 速碼云服務:隸屬于速碼云內部的公共服務。
              通過服務拆分,將業務分級,流量分流,各個服務間解耦互不影響,服務穩定性穩步提升。例如:有一段時間基礎服務被攻擊,pv由正常的2000w增加到3.7億,導致基礎服務響時間增加。但此時短信發送,校驗等其他服務任然能正常使用。

               

              3.數據處理層:

               

               


              數據處理層更改的地方比較多,從根本上解決1.0版本的不穩定因素。
              · 使用kafka做消息隊列,將業務解耦,數據統一處理。
              · 縮短服務層的處理流程,通過kafka將復雜耗時的處理在數據處理中心中異步處理,縮短服務層的訪問時間。
              · 獨立短信發送業務,專注對接通道,保證短信發送穩定高效;
              · 服務間調用使用Dubbo通信。
              · Redis不再寫盤,并增加keepalived。
              · 接入多條通道,保證短信發送成功率。當一條通道出現問題,自動啟動備用通道發送短信。
              · 增加業務全流程監控,并提供技術支持系統。將之前的問題查詢時間縮短10倍。
              · 服務配置動態化,即時生效,且不需要重啟服務器。
              4.數據存儲:簡化升級數據存儲介質,提高其穩定性,降低維護難度。
              · MongoDB分庫分表以提升查詢寫入性能;
              · 升級優化ES的索引結構,提升數據的完整性;
              · 通過kafka傳遞數據,在數據中心統一落地,統一處理落地錯誤的數據
              以上就是SMSSDK2.0版本的服務端架構縮影,在實際的實施過程中還遇到了很多問題:
              · 新老版本的數據兼容合并問題;
              · kafka重復消費導致短信重復發送的問題;
              · 統計耗費過多資源,且數據不準確的問題;
              · 通道智能切換的問題;


              等等其它大大小小的問題。不過在2.0版本上,進行bug查找,修復的難度降低了很多。
              1. 業務升級:
              · 增加的SDK的智能驗證功能;
              · 增加了web-api發送自定短信內容的接口;
              · 優化了SDK的通信協議,提升安全性和性能;
              在SMSSDK2.0穩定運行之后,由于速碼云內部業務調整,開發者需求增多等諸多因素,SMSSDK邁入了3.0。

               

               

               

              三、SMSSDK3.0版本

               

               


              SMSSDK3.0在主體架構上沒有做太大的改動,主要在業務上做了很多的優化工作。最終目的是縮短開發者集成SDK的時間,提升速碼云平臺的服務品質。
              在3.0中,主要做了以下升級:
              1. 同一個appkey可以在速碼云的所有sdk中使用。
              2. 開發者可以個性化配置:短息內容,驗證碼長度,驗證碼有效時間;
              3. 接入了更多優質通道,提升短信發成功率;
              4. 標準化sdk的通信協議,方便和其他速碼云下sdk組合使用; 還有bug修復,性能優化的工作,就不逐個列舉了。

               


              文章結語

               


              以上就是SMSSDK 2年來的進化過程。這其中有服務崩潰時的慌張,有數據丟失時的驚恐,有尋找bug時的迷惑,有服務穩定高效時的欣喜。


              在未來SMSSDK將繼續保持高效、穩定的短信驗證和發送服務。持續不斷的技術升級,為開發者提更為豐富的功能。

               

               

              主站蜘蛛池模板: 风韵饥渴少妇在线观看| 久久久久久亚洲精品| 男女免费观看做爰视频在线观看 | 精品国产成人国产在线视| 亚洲中文在线视频| 欧美嫩交一区二区三区| 国产精品爆乳奶水无码视频| 在线视频 亚洲精品| 日本视频高清一道一区| 国语少妇高潮对白在线| 自拍亚洲综合在线精品| 亚洲一区二区女搞男| 国产果冻豆传媒麻婆精东| 亚洲国产激情一区二区三区| 狠狠色丁香婷婷综合尤物 | 99精品偷自拍| 无码一区二区免费波多野播放搜索| 无码国模国产在线观看免费| 隔壁人妻偷人bd中字| 日本午夜精品一区二区三区电影| 青青草原网站在线观看| 久久精品天天中文字幕人妻| 四虎永久在线精品免费无码| 色欲久久久中文字幕综合网| 亚洲国产韩国欧美在线| 亚洲色爱图小说专区| 亚洲午夜成人精品无码app| 亚洲色成人网站www永久下载| 国产精品久久久一区二区三区| 国产免费不卡av在线播放| 人人妻人人狠人人爽天天综合网| 国产av激情无码久久| 久久久成人精品av四区| 国产日韩久久免费影院| 亚洲国产天堂久久国产91| 制服丝袜亚洲欧美中文字幕| 日产区一线二线三av| 成全影视大全在线观看| 久久久亚洲精品一区二区三区浴池 | 99久久婷婷国产综合亚洲| 久久亚洲精品天天综合网| 在線客服系統