呼叫中心的核心價值是連接人與服務。隨著互聯網對傳統行業改造的深化,派生出很多線上、線下互動的應用場景,例如:訂餐、訂外賣、訂酒店等。而線上線下信息鏈結合最簡單、最高效的工具莫過于電話。因此,呼叫中心也從原來僅僅提供客戶服務和營銷服務,演變為與企業業務流程深度結合,全方位實現企業與客戶溝通的工具。天潤融通的云呼叫中心作為一個開放的呼叫中心能力平臺,使得企業只需要使用非常簡單的API或SDK即可輕松實現低成本、高可靠的語音服務。
開放化的語音平臺結合場景化的應用,使得云呼叫中心平臺對容量和穩定性提出了更大的要求。如何滿足客戶彈性業務需求,應對業務時段峰值?下面就以某訂餐業務模型為例,探討下云呼叫中心架構該如何應對?
某外賣業務模型
某外賣業務流量圖
每天中午11:00-12:30,晚上17:00-19:00訂餐業務高峰,極不均衡
設計原則
在智能云呼叫中心平臺設計之初,我們根據平臺客戶的業務需求特點,對平臺架構設計確認了如下幾點原則:
1.平臺架構應基于開放成熟的云IaaS服務;
2.在云端進行架構設計時要保持悲觀,假設所有事物都會發生故障。換句話來說,架構需要面向故障的自動化恢復來設計,實施和部署。平臺任何模塊必須是HA架構,消除單點模塊;
3.應用云IaaS服務與IDC機房由DX專線組成混合架構云;
4.分布式架構,必須非常容易擴容,支持自動彈性伸縮;
5.平臺中模塊之間的關系降低耦合,便于業務的快速演進;
6.以業務監控、日志和統計為運營核心構建平臺;
7.具備跨機房級別的高可用結構;
8.完善的完全機制,自我保護與服務降級能力;
實踐之路
憑借“云中優勢”進行系統組網。
基于云平臺的架構在組網結構上具備明顯的商業優勢。體現在幾乎為零的啟動成本,靈活的資源按需付費模式,快速的擴容上線能力等方面。
在技術層面云平臺架構也存在明顯優勢。可實現自動化構建和部署,自動擴展無需人工干預,可將測試持續注入到開發過程各個階段,實現改進的可預測性。
天潤融通智能云呼叫中心平臺,基于AWS云/阿里云+DX直連IDC組建的混合架構云,既能利用云平臺的“云中優勢”又能兼容特殊應用讓平臺的運行上線無縫切換。在網絡架構上,將核心機房和落地機房通過專線打通,形成環線。其中任何一點的專線故障都可以通過整體的網絡調度,由其他專線或互聯網進行切換傳送,從而不影響業務的正常運轉。
高可用的組網結構圖
在基礎IaaS云服務上構建大容量高可用的系統。
在基礎IaaS云服務方面,AWS與阿里云差別不大,以下僅以AWS為例說明如何在基礎IaaS服務之上構建大容量高可用的系統。
目前智能云呼叫中心平臺架構基于AWS所提供的3層基礎服務:
AWS云平臺組件服務
第一層。 基礎計算、存儲和網絡組件,包括EC2,S3,EBS,VPC和DX等等。其中S3服務由AWS提供11個9的持久性,DX專線采用2條互為備份的1G直連保證了網絡性能。
第二層。高可用的數據庫RDS,Cache,SNS和SQS應用組件,支持跨機房的高可用和可靈活擴容。實時處理部分全部使用Rediscache降低數據庫壓力,大量使用SQS做異步化處理實現削峰填谷。
第三層。應用層的ELB負載均衡器,AutoScaling彈性伸縮,以及完善的監控和日志服務。系統各模塊首先全部是無狀態的,AutoScaling的應用使得通過ELB收集采樣來的當前負載和伸縮策略相結合,能夠動態調整EC2的實例個數,當業務高峰時啟動大量實例承接業務,而低谷時減小實例降低成本。
在平臺架構設計中必須意識到,故障和故障切換是作為系統架構的一部分存在的。通過AWS/阿里云等云環境提供的容錯架構,大大降低了系統運維方面的復雜性,實際上這部分架構是由云環境完成了。與基礎硬件故障設計一樣,平臺軟件方面也必須進行故障切換的架構設計,比如:如果一個模塊down掉,平臺上的應用怎么辦?如果接口請求超時或異常怎么處理?如果突發請求超過系統容量又怎么辦?
我們的經驗是基于SOA面向服務的架構理念,構建組件之間的關鍵是減小組件之間的依賴。如果一個組件掛了沒有響應或響應時間過長,系統中其他組件應該能繼續工作。組件之間盡量相互獨立,通過異步交互方式使用消息隊列設計組件間的接口。這樣即使某些功能暫時不能用,整個系統仍然繼續運行,當出問題的組件恢復后仍然可以使用消息隊列中的數據恢復運行狀態。
基于SOA面向服務的架構理念,我們解耦和拆分構建了大量的生態子系統,系統之間通過API調用構建完整的功能生態鏈,比如NOSS網管中心,BOSS營帳中心,NMC碼號中心,TTS-proxy語音合成中心,SMSC短信平臺等等,整體架構如下圖所示意:
整體架構圖
除了整體生態系統層面做了解耦和面向微服務架構的拆分工作,智能云呼叫中心核心交換平臺也進行了大量微模塊拆分。共計拆分了25個子系統,其中主要的子系統如下:
模塊名 |
用途 |
支持集群 |
主要協議 |
sip-media-server |
核心交換服務 |
支持 |
SIP/RTP |
sip-proxy |
核心調度服務 |
支持 |
SIP/TCP |
Webrtc-gateway |
Webrtc接入網關 |
支持 |
SIP/Websocket |
realtime |
運行時實時數據服務 |
支持 |
HTTP |
cdr |
話單采集和處理服務 |
支持 |
HTTP |
webcall |
Webcall接口模塊 |
支持 |
HTTP |
PredictDialer |
預測外呼模塊 |
支持 |
HTTP |
ASR |
智能語音轉寫模塊 |
支持 |
HTTP |
conf-api |
配置接口服務 |
支持 |
HTTP |
data-api |
業務數據接口 |
支持 |
HTTP |
control-api |
控制接口服務 |
支持 |
HTTP |
task-engine |
任務引擎服務 |
支持 |
HTTP |
agent-gateway |
坐席管理模塊 |
支持 |
Websocket/Redis |
big-queue |
統一排隊服務 |
支持 |
HTTP |
上述子系統,全部實現了無狀態邏輯,用集群堆疊的方式實現高可用和高性能。架構實現要點有:
1.對上層提供統一的接口服務,接口服務版本可靈活擴展;
2.ConfDB和CacheDB完全分離,實時業務不依賴于配置庫,只使用高性能緩存庫;
3.將超大量數據存儲和運行時數據存儲完全分離,使用云環境對象存儲和nosql數據庫實現海量數據的存儲和處理;
4.AutoScaling彈性伸縮時實例自舉,實例向控制服務詢問:“我是誰?我該干什么?”盡量減少人為部署失誤,創建一個自愈環境;
5.使用開源dubbo自動管理服務;
6.要有完整的監控服務。
核心交換平臺模塊架構圖
云服務的安全機制
云時代所面臨的安全問題極其重要。天潤融通智能云呼叫中心平臺的架構設計準備了三重備份機制:第一基于AWS云平臺。首先在AWSA/B機房實現雙活的數據中心;第二將業務數據在核心機房進行熱備,一旦AWS云服務出現全局問題立刻切換業務到核心機房保持業務持續服務;第三將數據進行孤島離線冷備份,確保數據可恢復。
在安全架構上,除了技術上防范比如sql注入,web漏洞,暴力破解等,還采用一系列安全架構提供安全保障,包括對外的入侵檢測系統、WAF防護、網絡防火墻,和對內的賬號權限管理審計等。
實踐成果
天潤融通大容量高可用的呼叫中心平臺架構,使云呼叫中心在性能上可以有能力比肩,甚至超過原有的以硬件為核心的呼叫中心系統,徹底打破了人們對曾經云呼叫中心只能做小客戶的固有印象。具體實踐成果如下:
1、解決大容量并發問題。
基本指標包括:呼叫并發能力超過10000線;并發坐席超過20000席;CPS(每秒處理呼叫數)能力在200-400之間;支持單平臺最大1000租戶;呼叫響應時間小于1秒;每天處理200萬分鐘通話;TTS平均響應時間少于1秒;消息響應時間小于1秒;錄音轉換效率應通話結束后小于1分鐘可用;每天處理800G錄音(壓縮后);
2.解決平臺高可用問題,消除單點,跨機房級負載均衡,平臺有超高穩定性
3.彈性伸縮能力解決業務峰值問題
4.完整的生態子系統解決運營成本問題
憑借大容量高可用的智能云呼叫中心平臺,天潤融通收獲了各行業客戶的認可。快速靈活可擴展的云模式,也更加適應未來技術及業務的成長性需求,讓呼叫中心的能力在未來可以持續增長。