應(yīng)用分布式呼叫中心各個(gè)關(guān)鍵模塊都采用了當(dāng)前流行和通用的技術(shù)平臺(tái)。技術(shù)實(shí)現(xiàn)分布式應(yīng)用技術(shù); Java使應(yīng)用具有跨平臺(tái)特性,即在一個(gè)操作系統(tǒng)平臺(tái)上編寫的程序移植到其他操作系統(tǒng)平臺(tái)上時(shí),不用修改源代碼。
應(yīng)用分布式呼叫中心利用中間件中的數(shù)據(jù)邏輯,使應(yīng)用無(wú)需改變客戶端即可訪問(wèn)其他節(jié)點(diǎn)的數(shù)據(jù)。應(yīng)用分布式數(shù)據(jù)庫(kù)可實(shí)現(xiàn)整個(gè)系統(tǒng)數(shù)據(jù)的完整性和一致性。分布帶來(lái)的問(wèn)題和解決辦法。
應(yīng)用分布式呼叫中心應(yīng)用和數(shù)據(jù)分布產(chǎn)生的問(wèn)題
由于整個(gè)網(wǎng)絡(luò)內(nèi)的客戶端和應(yīng)用服務(wù)器眾多,有以下3個(gè)問(wèn)題需要解決:客戶端該如何確定請(qǐng)求哪個(gè)應(yīng)用服務(wù)器;客戶端如何調(diào)用遠(yuǎn)程應(yīng)用服務(wù)器的組件; 各應(yīng)用服務(wù)器之間如何協(xié)調(diào)工作。
由于客戶端的數(shù)據(jù)可能同時(shí)取自多個(gè)點(diǎn),所以任何一個(gè)客戶端都可能要同時(shí)訪問(wèn)異地?cái)?shù)據(jù)庫(kù),并且需要訪問(wèn)IP地址經(jīng)常變化的數(shù)據(jù)庫(kù)。因此,若需要新增一個(gè)節(jié)點(diǎn)時(shí),需考慮系統(tǒng)的應(yīng)用和數(shù)據(jù)如何劃分,客戶端如何使正在處理中的業(yè)務(wù)實(shí)現(xiàn)平穩(wěn)過(guò)渡。
應(yīng)用分布式呼叫中心解決的方法
應(yīng)用分布問(wèn)題可通過(guò)設(shè)計(jì)客戶端和應(yīng)用服務(wù)器的訪問(wèn)規(guī)則來(lái)解決。訪問(wèn)應(yīng)遵循以下規(guī)則: 每一客戶端有且只有一個(gè)應(yīng)用服務(wù)器為之服務(wù),一般是該客戶端本地的應(yīng)用服務(wù)器;客戶端需要訪問(wèn)遠(yuǎn)服務(wù)器時(shí)應(yīng)該通過(guò)為之服務(wù)的應(yīng)用服務(wù)器; 每個(gè)應(yīng)用服務(wù)器都運(yùn)行所有業(yè)務(wù)邏輯組件和它訪問(wèn)的數(shù)據(jù)庫(kù)的數(shù)據(jù)邏輯組件,在業(yè)務(wù)量大的中心可做群集(Cluster)。
數(shù)據(jù)存放的原則:采用分布式數(shù)據(jù)庫(kù),對(duì)業(yè)務(wù)性數(shù)據(jù)采取就近分布存儲(chǔ)的策略,而對(duì)于控制性數(shù)據(jù)則利用事務(wù)日志來(lái)保持各點(diǎn)數(shù)據(jù)的一致性。系統(tǒng)應(yīng)用同時(shí)支持?jǐn)?shù)據(jù)的遠(yuǎn)程訪問(wèn),支持大吞吐量的聯(lián)機(jī)事務(wù)處理,支持災(zāi)難恢復(fù)。 數(shù)據(jù)訪問(wèn)的規(guī)則: 每個(gè)客戶端有且只有一個(gè)連接的應(yīng)用服務(wù)器,每一數(shù)據(jù)庫(kù)有且只有一個(gè)連接的應(yīng)用服務(wù)器。而每個(gè)應(yīng)用服務(wù)器可有多個(gè)客戶端,也可連接多個(gè)數(shù)據(jù)庫(kù)服務(wù)器。通過(guò)建立多個(gè)連接緩存的方法,實(shí)現(xiàn)不同節(jié)點(diǎn)和異構(gòu)數(shù)據(jù)庫(kù)的訪問(wèn)。