欧美,精品,综合,亚洲,好吊妞视频免新费观看,免费观看三级吃奶,一级a片女人自慰免费看

 首頁 > 技術(shù) > 技術(shù)文摘 > 基于三層結(jié)構(gòu)的CRM系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)

基于三層結(jié)構(gòu)的CRM系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)

2009-09-03 00:00:00   作者:   來源:   評(píng)論:0 點(diǎn)擊:



1、引言
  隨著計(jì)算機(jī)應(yīng)用技術(shù)的發(fā)展,CRM(客戶關(guān)系管理)也得到了前所未有的發(fā)展。最初的CRM系統(tǒng)基本上都是基于兩層結(jié)構(gòu)-C/S模式(客戶機(jī)/服務(wù)器)。C/S模式自從提出之后,曾經(jīng)對(duì)CRM的發(fā)展起到了巨大的推動(dòng)作用。但是隨著對(duì)數(shù)據(jù)庫操作復(fù)雜性的提高,傳統(tǒng)的C/S模式已經(jīng)不能滿足應(yīng)用需求,并且數(shù)據(jù)庫產(chǎn)品層出不窮,即使是關(guān)系數(shù)據(jù)庫,在性能指標(biāo)上也存在許多差異,比如數(shù)據(jù)格式、數(shù)據(jù)精度、數(shù)據(jù)模型和語義差異等等。所以,為了解決不同數(shù)據(jù)庫產(chǎn)品的互聯(lián)及其他問題。三層ClientServer結(jié)構(gòu)體系也應(yīng)運(yùn)而生。所謂三層結(jié)構(gòu),就是在原有的”兩層結(jié)構(gòu)”〔客戶端和服務(wù)器端)之間增加了一層組件,這層組件包括事務(wù)處理邏輯應(yīng)用服務(wù)、數(shù)據(jù)庫查詢代理等。隨著這層組件的增加,兩層結(jié)構(gòu)向三層結(jié)構(gòu)轉(zhuǎn)變后,客戶端和服務(wù)器端的負(fù)載就相應(yīng)減輕了.跨平臺(tái)、傳輸不可靠等問題也得到了解決。增加的這層組件就是我們所說的”中間件“。中間件在三層結(jié)構(gòu)中主要充當(dāng)中間層,實(shí)現(xiàn)數(shù)據(jù)安全、完整傳輸,通過負(fù)載均衡來調(diào)節(jié)系統(tǒng)的工作效率,從而彌補(bǔ)兩層結(jié)構(gòu)的不足。
  同時(shí),由于電子商務(wù)的飛速發(fā)展,使用CRM軟件的客戶的業(yè)務(wù)越來越復(fù)雜,而且業(yè)務(wù)種類可能會(huì)隨時(shí)變更,這就使得企業(yè)迫切的要求自己能夠進(jìn)行系統(tǒng)的二次開發(fā)。如果有了這項(xiàng)功能,即使企業(yè)的業(yè)務(wù)發(fā)生變更,企業(yè)也可以應(yīng)付自如。如今一般比較流行的CRM系統(tǒng)都不具備這樣的功能。我們的開發(fā)組對(duì)這項(xiàng)功能進(jìn)行了詳細(xì)研究,并最終給子實(shí)現(xiàn)。作者參與了基于三層結(jié)構(gòu)的CRM系統(tǒng)(Agent X)的設(shè)計(jì)和開發(fā)。本文詳細(xì)介紹了三層結(jié)構(gòu)的基本原理,并且詳細(xì)介紹了基于三層結(jié)構(gòu)的Agent X系統(tǒng)。
2、兩層ClientServer結(jié)構(gòu)
  一個(gè)功能強(qiáng)大的客戶應(yīng)用開發(fā)語言和一個(gè)多用途的用于傳送客戶請(qǐng)求到服務(wù)器的機(jī)構(gòu)是整個(gè)兩層結(jié)構(gòu)的核心。在一個(gè)數(shù)據(jù)庫存取事件中,數(shù)據(jù)由服務(wù)器實(shí)施存儲(chǔ)和訪向,數(shù)據(jù)庫引擎負(fù)貴處理從客戶機(jī)發(fā)來的請(qǐng)求,F(xiàn)在這種請(qǐng)求所使用的語言大多數(shù)類似于sQL語言。要把sQL語言從客戶機(jī)傳送到服務(wù)器上,必須能識(shí)別服務(wù)的標(biāo)志符或者由一個(gè)應(yīng)用程序接口來完成,還必須知道服務(wù)器的位置,數(shù)據(jù)組織形式以及數(shù)據(jù)如何定義。在服務(wù)器中,請(qǐng)求還將得到存儲(chǔ)邏輯和處理上的進(jìn)一步優(yōu)化,例如使用權(quán)限、數(shù)據(jù)完整性和保密性等。數(shù)據(jù)返回后在客戶機(jī)上得到進(jìn)一步處理,以適應(yīng)查詢、商業(yè)應(yīng)用、預(yù)測分析和數(shù)據(jù)報(bào)表等各種要求。
3、三層ClientServer結(jié)構(gòu)
  3.1三層結(jié)構(gòu)的基本原理
  X/Open DTP標(biāo)準(zhǔn)(l991)分布式處理、參考模型和分布式事務(wù)處理中描述了三層口ClientServer模型。
  應(yīng)用程序定義操作來完成特定的任務(wù)。它定義事務(wù)的范圍并且把服務(wù)要求提交給事務(wù)管理器,通信管理器和一個(gè)或者多個(gè)資源管理器。
  資源管理器提供應(yīng)用程序要求的事務(wù)間的服務(wù)。一般情況下,資源管理器是一個(gè)數(shù)據(jù)庫,但并不總是這樣。為了維護(hù)事務(wù)的完整性而修改的資源必須由資源管理器來管理,例如管理在線的隊(duì)列等等。資源管理器必須對(duì)它們涉及的資源提供兩階段確認(rèn)服務(wù)。
  事務(wù)管理器提供管理事務(wù)的服務(wù),包括資源管理的兩階段確認(rèn)服務(wù)和通信管理器的服務(wù)。如果事務(wù)跨越多個(gè)平臺(tái),那么其中的一個(gè)關(guān)于這個(gè)事務(wù)的管理器將被自動(dòng)命名為這個(gè)事務(wù)的控制事務(wù)管理器。
  通信管理器提供通信服務(wù)的接口以及管理應(yīng)用層協(xié)議。在大多數(shù)客戶/服務(wù)器棋式情況下,提供的服務(wù)僅僅是數(shù)據(jù)傳輸機(jī)制的接口。大多數(shù)的三層C/S系統(tǒng)都提供某些對(duì)話服務(wù)。
  應(yīng)用的客戶通過Miiddle Server要求應(yīng)用服務(wù)器提供服務(wù)。每一個(gè)客戶提交Begin要求給Miiddle Server,它表明客戶想開始處理一個(gè)事務(wù),然后客戶提交一個(gè)或者多個(gè)服務(wù)請(qǐng)求。Miiddle Server使用服務(wù)的名字來把要求路由送到合適的服務(wù)器。圖例表明一個(gè)服務(wù)可能由多個(gè)服務(wù)器提供服務(wù)具體的路由選項(xiàng)都可以由系統(tǒng)管理員在任何時(shí)候修改而不影響應(yīng)用和服務(wù)程序。如果一個(gè)邏輯數(shù)據(jù)庫(例如客戶庫)各部分存放在不同類型的數(shù)據(jù)庫中,那么大多數(shù)兩層結(jié)構(gòu)要維持異型數(shù)據(jù)庫的性能并提供數(shù)據(jù)完整性的功能是很困難的。而使用依賴數(shù)據(jù)的路由,就可以對(duì)每個(gè)數(shù)據(jù)庫提供同樣的服務(wù),且對(duì)系統(tǒng)的所有客戶是透明的。
  由上面簡單的對(duì)兩層和三層C/S的描述?梢钥吹剑龑咏Y(jié)構(gòu)在網(wǎng)絡(luò)流量和系統(tǒng)反應(yīng)速度方面優(yōu)于兩層結(jié)構(gòu),這是由于三層結(jié)構(gòu)中數(shù)據(jù)在發(fā)送到網(wǎng)絡(luò)之前首先由功能性服務(wù)器加以過濾,網(wǎng)絡(luò)通信量會(huì)因此下降;其次由于三層結(jié)構(gòu)中Client端并不是直接同數(shù)據(jù)庫打交道,而是通過三層結(jié)構(gòu)中的中間層統(tǒng)一調(diào)用來實(shí)施,這樣在靈活性和獨(dú)立性方面較好,而且還適合于不同數(shù)據(jù)庫之間的互聯(lián)。
  3.2三層結(jié)構(gòu)體系架構(gòu)
  在傳統(tǒng)的C/S模式的中間加人應(yīng)用服務(wù)器就形成了如下的三層結(jié)構(gòu)架構(gòu)。
4、三層結(jié)構(gòu)應(yīng)用實(shí)例--Agent X
  4.1系統(tǒng)介紹
  Agent X CRM系統(tǒng)采用三層的體系結(jié)構(gòu),前端為Agent座席應(yīng)用軟件,中間為應(yīng)用服務(wù)器,后端為數(shù)據(jù)庫或其他后臺(tái)系統(tǒng)。本系統(tǒng)可以應(yīng)用到銀行、保險(xiǎn)、電力和信息咨詢等領(lǐng)域。
  所有關(guān)于數(shù)據(jù)庫的操作都是由座席應(yīng)用程序?qū)⒄?qǐng)求發(fā)送到應(yīng)用服務(wù)器。對(duì)應(yīng)用服務(wù)器的請(qǐng)求是以XML電文的格式發(fā)送出去。服務(wù)器接到請(qǐng)求后。用XML解析器轉(zhuǎn)換成本身能夠理解的電文。應(yīng)用服務(wù)器根據(jù)前端請(qǐng)求進(jìn)行數(shù)據(jù)庫操作,并將操作結(jié)果返回到客戶端。客戶端接到電文之后用XML解析器再次解析成相應(yīng)的協(xié)議電文。在應(yīng)用服務(wù)器上運(yùn)行著許多對(duì)數(shù)據(jù)庫操作的服務(wù),由這些服務(wù)去和數(shù)據(jù)庫打交道。因此Agent座席端無需安裝數(shù)據(jù)庫驅(qū)動(dòng)程序,編程時(shí)無需考慮使用的數(shù)據(jù)庫類型,另外通過結(jié)合自動(dòng)更新工具,可以將系統(tǒng)的維護(hù)量減少到最低。
  應(yīng)用服務(wù)器支持分布式的系統(tǒng)結(jié)構(gòu),在一臺(tái)機(jī)器上可以運(yùn)行多個(gè)不同的環(huán)境,同一環(huán)境可以運(yùn)行在不同的機(jī)器上,因此系統(tǒng)可以同時(shí)訪問多個(gè)數(shù)據(jù)庫服務(wù)器,井且這些數(shù)據(jù)庫服務(wù)器可以是不同的數(shù)據(jù)庫類型,例如:可以同時(shí)是SQL Server數(shù)據(jù)庫,或者Oracle數(shù)據(jù)庫。這就解決了傳統(tǒng)上的CRM系統(tǒng)只能訪問單一類型數(shù)據(jù)庫的瓶頸。
  此外,該系統(tǒng)又采用了當(dāng)前比較流行的插件技術(shù),軟件提供商提供給用戶插件制作模板。提供這些模板使軟件提供商對(duì)企業(yè)技術(shù)人員只需進(jìn)行短期培訓(xùn),用戶就可以自己獨(dú)立進(jìn)行系統(tǒng)的二次開發(fā)。從而使二次開發(fā)更加簡單、便捷,可以更好的滿足企業(yè)自身需要。
  4.2應(yīng)用服務(wù)器基本架構(gòu)
  4.3應(yīng)用服務(wù)器的特點(diǎn)
  Agent X CRM系統(tǒng)中的應(yīng)用服務(wù)器由眾多的服務(wù)(services)所組成,每個(gè)單獨(dú)的服務(wù)均可以響應(yīng)客戶段的請(qǐng)求,并將獲得的結(jié)果返回給客戶端。應(yīng)用服務(wù)器具有如下特點(diǎn):
  服務(wù)的模塊化
  應(yīng)用服務(wù)器以各種可執(zhí)行程序?yàn)槟K,采用堆砌式的方法進(jìn)行構(gòu)筑,以各種服務(wù)為基本的服務(wù)單位,同一個(gè)程序可以提供一種或多種服務(wù)。同時(shí)系統(tǒng)提供功能豐富、強(qiáng)大的編程控件和編程模板,這樣可以使編程者專注于業(yè)務(wù)本身的邏輯,而無需對(duì)各種底層復(fù)雜的編程技術(shù)進(jìn)行了解,另外,由于系統(tǒng)采用了模塊式的方法,因此對(duì)單個(gè)服務(wù)程序的追加、刪除、修改甚至其bug,均不會(huì)對(duì)系統(tǒng)本身的運(yùn)行造成影響。
  服務(wù)的分布式
  應(yīng)用服務(wù)器支持分布式的系統(tǒng)結(jié)構(gòu),在一臺(tái)機(jī)器上可以運(yùn)行多個(gè)不同的環(huán)境伺一環(huán)境可以運(yùn)行在不同的機(jī)器上,以使整個(gè)系統(tǒng)運(yùn)行在分布式的結(jié)構(gòu)中,提高系統(tǒng)的工作效率。對(duì)于客戶請(qǐng)求數(shù)量較多的服務(wù),系統(tǒng)支持將該服務(wù)同時(shí)啟動(dòng)多個(gè),以便該服務(wù)能夠同時(shí)處理多個(gè)服務(wù)請(qǐng)求。
  操作的簡易性
  應(yīng)用服務(wù)器可以支持在不影響正常業(yè)務(wù)的情況下,在系統(tǒng)運(yùn)行中,停止或啟動(dòng)單個(gè)應(yīng)用程序,以方便系統(tǒng)的維護(hù)與更新。
  以HTTP為傳輸協(xié)議
  應(yīng)用服務(wù)器可以通過各種方式(如發(fā)送電文、API調(diào)用等)與外部系統(tǒng)交互。
  數(shù)據(jù)庫屏蔽
  Agent座席軟件與系統(tǒng)實(shí)際使用的數(shù)據(jù)庫產(chǎn)品類型無關(guān),當(dāng)客戶需要將數(shù)據(jù)庫軟件更換時(shí)(如由SQL Server轉(zhuǎn)換到Oracle時(shí)),只需對(duì)應(yīng)用服務(wù)器進(jìn)行配置即可,Agent座席無需進(jìn)行任何修改。
  4.4服務(wù)請(qǐng)求的具體實(shí)現(xiàn)步驟
  客戶端如何得到服務(wù)器的服務(wù),可以分為如下幾個(gè)步驟:
  客戶端向應(yīng)用服務(wù)器發(fā)送具體的請(qǐng)求給相應(yīng)的服務(wù)(Service)
  調(diào)用函數(shù)CreaieRequest(服務(wù)名稱,要傳輸?shù)臄?shù)據(jù))
  服務(wù)器相應(yīng)的服務(wù)接收到數(shù)據(jù),進(jìn)行分析,如果符合標(biāo)準(zhǔn),那么訪問數(shù)據(jù)庫得到相關(guān)數(shù)據(jù),然后打包發(fā)送給客戶端
  調(diào)用函數(shù)AnalyXML(XML格式的請(qǐng)求電文)。
  客戶端接收到服務(wù)器返回的電文進(jìn)行分析,如果符合內(nèi)部協(xié)議,表明請(qǐng)求成功,否則失敗。調(diào)用函數(shù)AnalyxML(xML格式的請(qǐng)求電文)
  無論是客戶端發(fā)給服務(wù)器,還是服務(wù)器發(fā)給客戶端的電文,均進(jìn)行XML協(xié)議分析。
  4.5二次開發(fā)的實(shí)現(xiàn)
  AgentX系統(tǒng)比較突出的特點(diǎn)就是實(shí)現(xiàn)了二次開發(fā)。隨著企業(yè)業(yè)務(wù)的變更,企業(yè)迫切需要能夠自己獨(dú)立進(jìn)行二次開發(fā)。基于這樣的需求,AgentX系統(tǒng)在三層結(jié)構(gòu)的基礎(chǔ)上采用了插件技術(shù)。除了基本模塊以外.其他的業(yè)務(wù)模塊均設(shè)定為插件。插件是以DLL文件的格式存在的。
  我們提供插件模板,客戶可以根據(jù)插件模板制作出與自身業(yè)務(wù)相關(guān)的插件模塊。然后將這個(gè)插件放到系統(tǒng)固定的Plugins目錄下面。當(dāng)主模塊運(yùn)行的時(shí)候,會(huì)將這個(gè)目錄下面的所有插件模塊均裝載進(jìn)來。
  插件模板提供了系統(tǒng)內(nèi)部所有的消息機(jī)制。當(dāng)主程序發(fā)生某個(gè)事件的時(shí)候,主程序會(huì)對(duì)各個(gè)插件進(jìn)行廣播,通知各個(gè)插件。相應(yīng)的插件可以對(duì)這個(gè)事件作出反應(yīng)完成必要的操作。
5.結(jié)論和今后的工作
  由于引入了三層結(jié)構(gòu)的概念,從而使應(yīng)用對(duì)數(shù)據(jù)庫的操作越來越簡便、而且系統(tǒng)還可以通過三層結(jié)構(gòu)的中間層一應(yīng)用服務(wù)器,訪問其他的服務(wù)器,例如:Web服務(wù)器,GIS,GPS等等。軟件提供商可以把大量的資源投人到應(yīng)用服務(wù)器的開發(fā),使得前臺(tái)系統(tǒng)的開發(fā)變得異常的簡單,快捷。在AgentX系統(tǒng)中,我們還引人了DCOM、插件、XML等關(guān)鍵技術(shù),使得系統(tǒng)的可操作性、穩(wěn)定性得到了很大的提高。
  但是電子商務(wù)的飛速發(fā)展,使得在有些方面三層結(jié)構(gòu)依然滿足不了企業(yè)的需要。因此還需要在三層結(jié)構(gòu)中引入多層結(jié)構(gòu)。接下來的工作就是考慮多層結(jié)構(gòu)的設(shè)計(jì),使CRM系統(tǒng)能夠真正滿足客戶的需求。

計(jì)世網(wǎng)

相關(guān)閱讀:

分享到: 收藏

專題