一種數(shù)據(jù)交換方法、系統(tǒng)以及數(shù)據(jù)平臺(tái)服務(wù)器的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)通信領(lǐng)域,特別涉及一種數(shù)據(jù)交換方法、系統(tǒng)以及數(shù)據(jù)平臺(tái)服務(wù) 器。
【背景技術(shù)】
[0002] 在一些交易類(lèi)網(wǎng)站,其數(shù)據(jù)平臺(tái)服務(wù)器需要和多個(gè)客戶的客戶服務(wù)器進(jìn)行數(shù)據(jù)交 換。例如,用戶在某汽車(chē)交易網(wǎng)站下訂單,網(wǎng)站需要匯總各客戶(廠家)的訂單數(shù)據(jù),并將匯 總的訂單數(shù)據(jù)發(fā)送給相應(yīng)廠家的客戶服務(wù)器,相應(yīng)地,客戶服務(wù)器還會(huì)返回廠家對(duì)訂單的 處理情況等信息。而各廠家的客戶服務(wù)器采用的數(shù)據(jù)接口不同,所使用的數(shù)據(jù)交換協(xié)議、接 受的數(shù)據(jù)輸出格式等也有可能千差萬(wàn)別。
[0003] 為此,現(xiàn)有技術(shù)中通常采用單協(xié)議服務(wù)型數(shù)據(jù)交換平臺(tái),來(lái)實(shí)現(xiàn)與客戶服務(wù)器的 數(shù)據(jù)交換。所謂"單協(xié)議"是指與某個(gè)客戶服務(wù)器的數(shù)據(jù)交換協(xié)議是固定的;所謂"服務(wù)型" 是指一個(gè)客戶對(duì)應(yīng)一個(gè)服務(wù),需要為每個(gè)客戶開(kāi)發(fā)一個(gè)服務(wù)。該數(shù)據(jù)交換平臺(tái)使用 webservices (網(wǎng)頁(yè)服務(wù))實(shí)現(xiàn)服務(wù)端與客戶端的數(shù)據(jù)交換,在客戶端通過(guò)webservices工具 生成代理類(lèi)proxycl ient,來(lái)訪問(wèn)服務(wù)器端提供的服務(wù)。
[0004] 在服務(wù)端,通過(guò)windows定時(shí)任務(wù)實(shí)現(xiàn)循環(huán)數(shù)據(jù)交換,例如windows定時(shí)任務(wù)每5分 鐘調(diào)用一次服務(wù),客戶端程序通過(guò)webservices協(xié)議與服務(wù)端進(jìn)行數(shù)據(jù)交換直到數(shù)據(jù)交換 完畢,服務(wù)端和客戶端斷開(kāi)連接,等待5分鐘后的下一次調(diào)度。
[0005] 現(xiàn)有技術(shù)的缺點(diǎn)在于:
[0006] (1)由于Webservcies的代理類(lèi)是在程序編譯前通過(guò)工具生成,所以一旦程序編譯 后就很難再對(duì)其進(jìn)行改變,除非重新編譯。
[0007] (2)針對(duì)不同客戶需要重新開(kāi)發(fā)和部署新的服務(wù),增加了開(kāi)發(fā)成本和維護(hù)成本。
[0008] (3)通過(guò)windows定時(shí)任務(wù)調(diào)度程序,會(huì)帶來(lái)服務(wù)部署的單點(diǎn)化,如果部署本服務(wù) 的機(jī)器出現(xiàn)異常不能訪問(wèn)或啟動(dòng),除了重新啟動(dòng)計(jì)算機(jī)幾乎沒(méi)有其他方案,對(duì)于要求7*24 的服務(wù)來(lái)說(shuō)是不可接受的。
【發(fā)明內(nèi)容】
[0009] 鑒于上述問(wèn)題,提出了本發(fā)明以便提供一種克服上述問(wèn)題或者至少部分地解決上 述問(wèn)題的數(shù)據(jù)交換方法、系統(tǒng)以及數(shù)據(jù)平臺(tái)服務(wù)器。
[0010] 根據(jù)本發(fā)明的一個(gè)方面,提供了一種數(shù)據(jù)交換方法,在數(shù)據(jù)平臺(tái)服務(wù)器中執(zhí)行,數(shù) 據(jù)平臺(tái)服務(wù)器能夠在調(diào)度服務(wù)器的調(diào)度下與客戶服務(wù)器進(jìn)行數(shù)據(jù)交換;且數(shù)據(jù)平臺(tái)服務(wù)器 中存儲(chǔ)有客戶標(biāo)識(shí)和相關(guān)聯(lián)的配置信息,以及服務(wù)名稱(chēng)和相關(guān)聯(lián)的數(shù)據(jù)采集邏輯;配置信 息中包括客戶服務(wù)器的接口網(wǎng)絡(luò)地址、數(shù)據(jù)輸出格式信息、數(shù)據(jù)交換協(xié)議,以及服務(wù)名稱(chēng)和 相關(guān)聯(lián)的接口方法名稱(chēng);所述數(shù)據(jù)交換方法包括:接收調(diào)度服務(wù)器發(fā)送的數(shù)據(jù)交換請(qǐng)求,從 數(shù)據(jù)交換請(qǐng)求中解析出客戶標(biāo)識(shí)和服務(wù)名稱(chēng);根據(jù)解析出的客戶標(biāo)識(shí),獲取客戶服務(wù)器的 接口網(wǎng)絡(luò)地址、數(shù)據(jù)輸出格式信息和數(shù)據(jù)交換協(xié)議,根據(jù)解析出的服務(wù)名稱(chēng)獲取數(shù)據(jù)采集 邏輯和接口方法名稱(chēng),并將接口網(wǎng)絡(luò)地址和接口方法名稱(chēng)組合為數(shù)據(jù)交換接口;根據(jù)獲取 到的數(shù)據(jù)采集邏輯從數(shù)據(jù)平臺(tái)服務(wù)器中獲取客戶服務(wù)器的業(yè)務(wù)數(shù)據(jù),并根據(jù)獲取到的數(shù)據(jù) 輸出格式信息對(duì)獲取到的業(yè)務(wù)數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換;采用獲取到的數(shù)據(jù)交換協(xié)議,將數(shù) 據(jù)格式轉(zhuǎn)換后的業(yè)務(wù)數(shù)據(jù)推送到客戶服務(wù)器的所述數(shù)據(jù)交換接口。
[0011] 可選地,在根據(jù)本發(fā)明的數(shù)據(jù)交換方法中,所述配置信息中還包括數(shù)據(jù)平臺(tái)標(biāo)識(shí) 和相關(guān)聯(lián)的認(rèn)證碼信息;所述數(shù)據(jù)交換方法還包括:數(shù)據(jù)平臺(tái)服務(wù)器發(fā)送數(shù)據(jù)平臺(tái)標(biāo)識(shí)和 認(rèn)證碼信息到客戶服務(wù)器,以供客戶服務(wù)器對(duì)數(shù)據(jù)平臺(tái)服務(wù)器進(jìn)行身份驗(yàn)證。
[0012] 可選地,根據(jù)本發(fā)明的數(shù)據(jù)交換方法,還包括:從所述數(shù)據(jù)交換接口獲取客戶服務(wù) 器的響應(yīng)數(shù)據(jù)。
[0013]可選地,在根據(jù)本發(fā)明的數(shù)據(jù)交換方法中,所述數(shù)據(jù)交換協(xié)議包括:webservices 協(xié)議和http協(xié)議。
[0014] 可選地,在根據(jù)本發(fā)明的數(shù)據(jù)交換方法中,所述客戶標(biāo)識(shí)和相關(guān)聯(lián)的配置信息以 數(shù)據(jù)表方式或者以JSON格式存儲(chǔ)在數(shù)據(jù)平臺(tái)服務(wù)器中。
[0015] 根據(jù)本發(fā)明的另一方面,提供了一種數(shù)據(jù)平臺(tái)服務(wù)器,與調(diào)度服務(wù)器和客戶服務(wù) 器通信連接,能夠在調(diào)度服務(wù)器的調(diào)度下與客戶服務(wù)器進(jìn)行數(shù)據(jù)交換,該數(shù)據(jù)平臺(tái)服務(wù)器 包括:存儲(chǔ)單元,適于存儲(chǔ)客戶標(biāo)識(shí)和相關(guān)聯(lián)的配置信息,以及服務(wù)名稱(chēng)和相關(guān)聯(lián)的數(shù)據(jù)采 集邏輯;配置信息中包括客戶服務(wù)器的接口網(wǎng)絡(luò)地址、數(shù)據(jù)輸出格式信息、數(shù)據(jù)交換協(xié)議, 以及服務(wù)名稱(chēng)和相關(guān)聯(lián)的接口方法名稱(chēng);接收單元,適于接收調(diào)度服務(wù)器發(fā)送的數(shù)據(jù)交換 請(qǐng)求,從數(shù)據(jù)交換請(qǐng)求中解析出客戶標(biāo)識(shí)和服務(wù)名稱(chēng);處理單元,適于根據(jù)解析出的客戶標(biāo) 識(shí),獲取客戶服務(wù)器的接口網(wǎng)絡(luò)地址、數(shù)據(jù)輸出格式信息和數(shù)據(jù)交換協(xié)議,根據(jù)解析出的服 務(wù)名稱(chēng)獲取數(shù)據(jù)采集邏輯和接口方法名稱(chēng),并將接口網(wǎng)絡(luò)地址和接口方法名稱(chēng)組合為數(shù)據(jù) 交換接口;獲取單元,適于根據(jù)獲取到的數(shù)據(jù)采集邏輯從數(shù)據(jù)平臺(tái)服務(wù)器中獲取客戶服務(wù) 器的業(yè)務(wù)數(shù)據(jù),并根據(jù)獲取到的數(shù)據(jù)輸出格式信息對(duì)獲取到的業(yè)務(wù)數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn) 換;交換單元,適于采用獲取到的數(shù)據(jù)交換協(xié)議,將數(shù)據(jù)格式轉(zhuǎn)換后的業(yè)務(wù)數(shù)據(jù)推送到客戶 服務(wù)器的所述數(shù)據(jù)交換接口。
[0016] 根據(jù)本發(fā)明的又一方面,提供了一種數(shù)據(jù)交換系統(tǒng),包括調(diào)度服務(wù)器和一個(gè)或多 個(gè)上述的數(shù)據(jù)平臺(tái)服務(wù)器,其中數(shù)據(jù)平臺(tái)服務(wù)器與一個(gè)或多個(gè)客戶服務(wù)器通信連接,能夠 在調(diào)度服務(wù)器的調(diào)度下與客戶服務(wù)器進(jìn)行數(shù)據(jù)交換
[0017] 根據(jù)本發(fā)明的數(shù)據(jù)交換方案,通過(guò)配置文件完成新數(shù)據(jù)對(duì)接的需求,增加新的對(duì) 接客戶或者功能,只需要在配置文件中增加該客戶的配置信息即可,不需要重新開(kāi)發(fā)、調(diào) 試、上線。相比以前開(kāi)發(fā)新的代碼完成新數(shù)據(jù)對(duì)接需求,有效降低了數(shù)據(jù)對(duì)接的成本,非技 術(shù)工作人員通過(guò)簡(jiǎn)單的培訓(xùn)即可完成數(shù)據(jù)對(duì)接任務(wù)。
[0018] 進(jìn)一步,通過(guò)對(duì)數(shù)據(jù)平臺(tái)服務(wù)器的分布式部署,一旦發(fā)現(xiàn)其中一臺(tái)出現(xiàn)異常,調(diào)度 服務(wù)器可以將服務(wù)切換到另一臺(tái)運(yùn)行,不再受單臺(tái)服務(wù)器突發(fā)性異常的影響,提高了服務(wù) 的穩(wěn)定性。
[0019] 上述說(shuō)明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段, 而可依照說(shuō)明書(shū)的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠 更明顯易懂,以下特舉本發(fā)明的【具體實(shí)施方式】。
【附圖說(shuō)明】
[0020] 通過(guò)閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通 技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明 的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中:
[0021] 圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的數(shù)據(jù)交換系統(tǒng)的結(jié)構(gòu)圖;
[0022] 圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的數(shù)據(jù)交換方法的流程圖;以及
[0023] 圖3示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的數(shù)據(jù)平臺(tái)服務(wù)器的結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0024] 下面將參照附圖更詳細(xì)地描述本公開(kāi)的示例性實(shí)施例。雖然附圖中顯示了本公開(kāi) 的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開(kāi)而不應(yīng)被這里闡述的實(shí)施例 所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開(kāi),并且能夠?qū)⒈竟_(kāi)的范圍 完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0025] 圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的數(shù)據(jù)交換系統(tǒng)的結(jié)構(gòu)圖。參照?qǐng)D1,數(shù)據(jù)交換 系統(tǒng)包括調(diào)度服務(wù)器和一個(gè)或多個(gè)數(shù)據(jù)平臺(tái)服務(wù)器,其中數(shù)據(jù)平臺(tái)服務(wù)器與一個(gè)或多個(gè)客 戶服務(wù)器通信連接,能夠在調(diào)度服務(wù)器的調(diào)度下與客戶服務(wù)器進(jìn)行數(shù)據(jù)交換。
[0026] 在本發(fā)明實(shí)施例中,通過(guò)部署多臺(tái)"數(shù)據(jù)平臺(tái)服務(wù)器"可以實(shí)現(xiàn)分布式部署,每臺(tái) 數(shù)據(jù)平臺(tái)服務(wù)器都是