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