版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
目錄1前言 41.1企業(yè)ERP系統(tǒng)的需求描述 41.2ERP技術(shù)及應(yīng)用的發(fā)展趨勢 51.2.1B/S架構(gòu)的ERP已經(jīng)盛行 51.2.2SOA架構(gòu)的引入,使ERP全面升級 51.2.3平臺化——ERP的柔性大大增強 51.2.4與其它信息系統(tǒng)的集成 61.2.5整合業(yè)務(wù)流程的監(jiān)測與評估 72傳統(tǒng)ERP產(chǎn)品技術(shù)架構(gòu) 82.1傳統(tǒng)C/S架構(gòu)的ERP系統(tǒng) 82.2B/S架構(gòu)的ERP系統(tǒng) 82.3C/S架構(gòu)和B/S架構(gòu)的優(yōu)缺點分析 92.3.1C/S系統(tǒng)優(yōu)缺點 92.3.2B/S系統(tǒng)優(yōu)缺點 92.3.3結(jié)論 103國內(nèi)外最新ERP產(chǎn)品技術(shù)架構(gòu) 103.1主流ERP產(chǎn)品簡要介紹 103.1.1OracleEBusinessSuite 103.1.2SAPNetWeaver 123.1.3用友U9 123.2ERP系統(tǒng)架構(gòu)設(shè)計的共同特點 133.2.1基于互聯(lián)網(wǎng)的三層體系架構(gòu) 143.2.2面向服務(wù)架構(gòu)(SOA) 143.2.3模塊化和組件化的體系架構(gòu) 144基于SOA架構(gòu)的ERP系統(tǒng) 154.1SOA技術(shù)簡介 154.1.1SOA概念及簡介 154.1.2基于SOA技術(shù)的體系結(jié)構(gòu) 164.1.3SOA的實現(xiàn)方式-WebService 194.2基于SOA的ERP系統(tǒng)架構(gòu)設(shè)計 224.2.1SOA架構(gòu)基礎(chǔ)技術(shù) 224.2.2SOA架構(gòu)設(shè)計方案 254.2.3SOA架構(gòu)實現(xiàn) 264.2.4SOA架構(gòu)的服務(wù)管理組件:ESB 274.3ERP系統(tǒng)架構(gòu)技術(shù)的時間線 305系統(tǒng)實現(xiàn)的關(guān)鍵技術(shù) 325.1關(guān)鍵技術(shù)框架及工具 325.1.1三層分布式架構(gòu) 325.1.2基于WEB的B/S架構(gòu)開發(fā)技術(shù) 345.1.3統(tǒng)一認證技術(shù) 345.1.4構(gòu)件開發(fā)技術(shù) 365.1.5工作流系統(tǒng) 405.1.6權(quán)限管理系統(tǒng) 455.1.7表單生成技術(shù) 495.1.8插件化開發(fā)框架 515.2系統(tǒng)性能優(yōu)化技術(shù) 525.2.1分布式技術(shù)應(yīng)用 525.2.2AJAX局部更新 545.2.3預(yù)加載技術(shù) 555.2.4數(shù)據(jù)庫查詢優(yōu)化 555.2.5數(shù)據(jù)庫讀寫分離 565.3系統(tǒng)運營部署設(shè)計 565.3.1服務(wù)器集群技術(shù) 565.3.2虛擬化數(shù)據(jù)中心技術(shù) 576應(yīng)用云計算技術(shù)的ERP系統(tǒng) 616.1云計算技術(shù)簡介 616.1.1IaaS基礎(chǔ)設(shè)施即服務(wù) 626.1.2PaaS平臺及服務(wù) 656.1.3SaaS軟件即服務(wù) 656.1.4云計算產(chǎn)生背景分析 696.2應(yīng)用云計算技術(shù)的ERP系統(tǒng) 706.2.1SaaS模式的ERP與傳統(tǒng)ERP的比較 706.2.2SaaS模式的ERP系統(tǒng)架構(gòu)設(shè)計 706.2.3SaaS模式的ERP系統(tǒng)的應(yīng)用前景 726.3云計算安全設(shè)計 736.3.1云端數(shù)據(jù)存儲加密 736.3.2網(wǎng)絡(luò)數(shù)據(jù)傳輸加密 746.3.3數(shù)據(jù)安全管理規(guī)范 746.3.4云端加密的利與弊 766.4應(yīng)用物聯(lián)網(wǎng)技術(shù)的ERP系統(tǒng) 766.4.1物聯(lián)網(wǎng)技術(shù) 766.4.2物聯(lián)網(wǎng)應(yīng)用案例—服裝行業(yè) 796.4.3RFID,無線移動數(shù)據(jù)的收集技術(shù) 806.5應(yīng)用移動技術(shù)的ERP系統(tǒng) 816.5.1移動ERP系統(tǒng)介紹 816.5.2移動ERP系統(tǒng)結(jié)構(gòu)圖 827總結(jié) 848參考文獻 85序言企業(yè)ERP系統(tǒng)需求描述
ERP實施主體――企業(yè)需求永遠是ERP技術(shù)發(fā)展主動力,因為全球一體化進程加劇,使得企業(yè)所面臨競爭環(huán)境發(fā)生了巨大改變,對ERP提出了新需求,具體表現(xiàn)在[50]:
1)全球化市場發(fā)展和產(chǎn)業(yè)鏈之間合作經(jīng)營生產(chǎn)方法出現(xiàn),使得ERP能支持異地企業(yè)運行、異種語言操作和異種貨幣交易;
2)企業(yè)過程重組及協(xié)作方法改變使得ERP能支持基于全球范圍可重構(gòu)過程供給鏈及供給網(wǎng)絡(luò)結(jié)構(gòu);
3)企業(yè)需要應(yīng)對新生產(chǎn)和經(jīng)營方法靈活性和靈敏性使得ERP也越來越靈活適應(yīng)多個生產(chǎn)制造方法管理模式;
4)因為行業(yè)特征越來越顯著,所以ERP行業(yè)化發(fā)展趨勢越來越顯著;
5)企業(yè)快速發(fā)展使得ERP柔性越來越高以適應(yīng)企業(yè)動態(tài)改變;
6)企業(yè)低成本策略使得ERP能夠按需配置、大大縮短實施周期。
IT技術(shù)發(fā)展是推進ERP發(fā)展另一驅(qū)動力,畢竟ERP應(yīng)用是以“技術(shù)導(dǎo)向”為推進應(yīng)用技術(shù),具體表現(xiàn)在,計算機新技術(shù)不停出現(xiàn)將會為ERP提供越來越靈活和強大功效軟硬件平臺,多層分布式結(jié)構(gòu)、面向?qū)ο蠹夹g(shù)、中間件技術(shù)和Internet發(fā)展會使ERP功效和性能快速提升。圖1.1企業(yè)ERP系統(tǒng)結(jié)構(gòu)圖ERP技術(shù)及應(yīng)用發(fā)展趨勢B/S架構(gòu)ERP已經(jīng)盛行
B/S模式是一個全新軟件系統(tǒng)結(jié)構(gòu)技術(shù)。伴隨Windows98/Windows將瀏覽器技術(shù)捆綁植入操作系統(tǒng)內(nèi)部,這種結(jié)構(gòu)更成為當今應(yīng)用軟件首選體系結(jié)構(gòu)。顯然B/S結(jié)構(gòu)應(yīng)用程序相對于傳統(tǒng)C/S結(jié)構(gòu)應(yīng)用程序?qū)⑹蔷薮筮M步。
網(wǎng)絡(luò)應(yīng)用系統(tǒng)發(fā)展正在改變著ERP系統(tǒng)開發(fā)及其實施方法,傳統(tǒng)ERP體系結(jié)構(gòu)逐步被由用戶、應(yīng)用服務(wù)器、數(shù)據(jù)庫服務(wù)器組成三層B/S結(jié)構(gòu)所替換,并有了統(tǒng)一通訊協(xié)議TCP/IP和統(tǒng)一基于Web瀏覽器用戶界面。B/SERP把傳統(tǒng)依靠于郵件、電話、人盯人管理方法變革為目標導(dǎo)向、步驟驅(qū)動、智能電子商務(wù)步驟。而且該B/S架構(gòu)ERP能夠把企業(yè)內(nèi)部步驟和企業(yè)外部步驟連接起來,和用戶、合作伙伴、供給商協(xié)同完成供給鏈業(yè)務(wù)操作[52]。SOA架構(gòu)引入,使ERP全方面升級SOA(Service-OrientedArchitecture面向服務(wù)架構(gòu))概念是由Gartner企業(yè)給出,Gartner對SOA定義為“用戶端/服務(wù)器軟件設(shè)計方法,一項應(yīng)用由軟件服務(wù)和軟件服務(wù)使用者組成……SOA和大多數(shù)通用用戶端/服務(wù)器模型不一樣之處,在于它著重強調(diào)軟件組件松散耦合,并使用獨立標準接口。其關(guān)鍵是:
1)SOA是一個軟件架構(gòu)思想,并不是一個產(chǎn)品。
2)SOA關(guān)鍵是面向服務(wù),此服務(wù)包含企業(yè)內(nèi)部和外部每一個業(yè)務(wù)細節(jié),比如企業(yè)中財務(wù)應(yīng)收發(fā)票處理就是一個服務(wù)。SOA思想是把這些服務(wù)從復(fù)雜環(huán)境中獨立出來——組件化封裝,然后經(jīng)過標準接口使不一樣服務(wù)之間相互調(diào)用。
3)SOA是一個軟件架構(gòu)思想,經(jīng)過使企業(yè)中一個個細化服務(wù)標準化,來達成企業(yè)IT系統(tǒng)跟隨企業(yè)動態(tài)改變目標。平臺化——ERP柔性大大增強
在ERP應(yīng)用實施過程中,用戶滿意度一直不高。關(guān)鍵原因是產(chǎn)品更新周期加緊、市場響應(yīng)要求提升,對ERP個性化要求越來越高,這是造成ERP實施成功率不高關(guān)鍵原因之一。
經(jīng)過多年積累,大家已經(jīng)總結(jié)出了ERP系統(tǒng)中業(yè)務(wù)關(guān)鍵,其架構(gòu)、業(yè)務(wù)模型、標準化高業(yè)務(wù)處理均是可封裝,假如我們把這部分封裝起來,再開發(fā)出輔助這個平臺用戶化工具,就能夠形成業(yè)務(wù)化平臺。一樣如此,假如對ERP進行分析、研究,將ERP相關(guān)部分封裝起來,再加上工具包,就能夠形成平臺化ERP。
平臺級企業(yè)信息處理方案提供了一個軟件平臺,內(nèi)置多個管理軟件組件和快捷二次開發(fā)工具,其組件能夠經(jīng)過多個語言來開發(fā),開發(fā)出一個個小模塊,然后把每一個小模塊獨立起來建成一個組件,最終把這些組件組裝起來形成最終成品。那么對這些組件進行調(diào)用,管理和刪減、添加及修改,甚至重新構(gòu)架全部能夠,而這么對某一部分改動根本不會影響到其它功效。這就是平臺帶來靈活性,易操作性,使它在進行小改動時能夠直接經(jīng)過系統(tǒng)上一些功效來實現(xiàn),而無須要經(jīng)過改源代碼方法來處理,能夠降低企業(yè)信息化軟件開發(fā)難度,提升開發(fā)效率,提升系統(tǒng)柔性和可擴展性。首先管理信息化廠商經(jīng)過平臺提供組件能很方便地滿足用戶個性化需求,和用戶在發(fā)展過程中多種多樣改變需求。其次將應(yīng)用軟件業(yè)務(wù)邏輯和開發(fā)技術(shù)相對分開,使得應(yīng)用軟件開發(fā)者能夠僅關(guān)注應(yīng)用業(yè)務(wù)任務(wù),而無須關(guān)注其技術(shù)實現(xiàn)。這使管理和業(yè)務(wù)人員參與應(yīng)用軟件開發(fā)成為可能。
平臺化軟件基礎(chǔ)特征以下:
1)軟件架構(gòu)靈活;
2)關(guān)鍵業(yè)務(wù)標準化;
3)接口標準化,含有很好兼容性;
4)提供用戶化工具包。和其它信息系統(tǒng)集成1)ERP和用戶關(guān)系管理深入整合
ERP將愈加面向市場和面向用戶,經(jīng)過基于知識市場估計、訂單處理和生產(chǎn)調(diào)度、基于約束調(diào)度功效等深入提升企業(yè)在全球化市場環(huán)境下更強優(yōu)化能力;并深入和用戶關(guān)系管理CRM結(jié)合,實現(xiàn)市場、銷售、服務(wù)一體化,使CRM前臺用戶服務(wù)和ERP后臺處理過程集成,提供用戶個性化服務(wù),使企業(yè)含有愈加好用戶滿意度。2)ERP和電子商務(wù)、供給鏈SCM、協(xié)同商務(wù)深入整合ERP將面向協(xié)同商務(wù)(CollaborativeCommerce),支持企業(yè)和貿(mào)易共同體業(yè)務(wù)伙伴、用戶之間協(xié)作,支持數(shù)字化業(yè)務(wù)交互過程;ERP供給鏈管理功效將深入加強,并經(jīng)過電子商務(wù)進行企業(yè)供需協(xié)作,如汽車行業(yè)要求ERP銷售和采購模塊支持用電子商務(wù)或EDI實現(xiàn)用戶或供給商之間電子訂貨和銷售開單過程;ERP將支持企業(yè)面向全球化市場環(huán)境,建立供給商、制造商和分銷商間基于價值鏈共享新伙伴關(guān)系,并使企業(yè)在協(xié)同商務(wù)中做到過程優(yōu)化、計劃正確、管理協(xié)調(diào)。3)ERP和產(chǎn)品數(shù)據(jù)管理整合產(chǎn)品數(shù)據(jù)管理PDM(ProductDataManagement)將企業(yè)中產(chǎn)品設(shè)計和制造全過程多種信息、產(chǎn)品不一樣設(shè)計階段數(shù)據(jù)和文檔組織在統(tǒng)一環(huán)境中。多年來ERP軟件商紛紛在ERP系統(tǒng)中納入了產(chǎn)品數(shù)據(jù)管理PDM功效或?qū)崿F(xiàn)和PDM系統(tǒng)集成,增加了對設(shè)計數(shù)據(jù)、過程、文檔應(yīng)用和管理,降低了ERP龐大數(shù)據(jù)管理和數(shù)據(jù)準備工作量,并深入加強了企業(yè)管理系統(tǒng)和CAD、CAM系統(tǒng)集成,深入提升了企業(yè)系統(tǒng)集成度和整體效率。4)ERP和制造實施系統(tǒng)整合為了加強ERP對于生產(chǎn)過程控制能力,改變ERP"重計劃,輕控制"弱點,將深入加強"事前計劃、事中控制、事后審核"功效,ERP將和制造實施系統(tǒng)MES(ManufacturingexecutiveSystem)、車間層操作控制系統(tǒng)SFC更緊密結(jié)合,形成實時化ERP/MES/SFC系統(tǒng)。該趨勢在步驟工業(yè)企業(yè)管控一體化系統(tǒng)中表現(xiàn)得最為顯著。5)ERP和工作流管理系統(tǒng)深入整合全方面工作流規(guī)則確保和時間相關(guān)業(yè)務(wù)信息能夠自動地在正確時間傳送到指定地點。ERP工作流管理功效將深入增強,經(jīng)過工作流實現(xiàn)企業(yè)人員、財務(wù)、制造和分銷間集成,并能支持企業(yè)經(jīng)營過程重組,也使ERP功效能夠擴展到辦公自動化和業(yè)務(wù)步驟控制方面。6)ERP和企業(yè)知識門戶深入整合企業(yè)知識門戶(EnterpriseKnowledgePortal,EKP)所關(guān)注是企業(yè)內(nèi)部職員和信息內(nèi)容,它關(guān)鍵是知識管理(KM),經(jīng)過和ERP系統(tǒng)集成,使得企業(yè)內(nèi)任何職員全部能夠?qū)崟r地和工作團體中其它組員取得聯(lián)絡(luò)、尋求到能夠提供幫助教授或快速連接到相關(guān)知識,它建立和使用能夠大大提升企業(yè)范圍內(nèi)知識共享,并由此提升企業(yè)職員工作效率。
整合業(yè)務(wù)步驟監(jiān)測和評定“用于測量成功業(yè)務(wù)應(yīng)用處理方案是連續(xù)改善關(guān)鍵:財務(wù)表現(xiàn)共享,SC效力,知識資本價值和用戶滿意度全部是新評測方法。”――Gartner。
傳統(tǒng)ERP產(chǎn)品技術(shù)架構(gòu)傳統(tǒng)C/S架構(gòu)ERP系統(tǒng)
信息系統(tǒng)架構(gòu)示意圖:
1)一層架構(gòu):用戶端、應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器全部在同一臺機器上布署;
2)兩層架構(gòu):數(shù)據(jù)庫服務(wù)和應(yīng)用服務(wù)在同一臺服務(wù)器上布署,用戶端訪問服務(wù)器上資源或數(shù)據(jù);
3)
三層架構(gòu):應(yīng)用服務(wù)和數(shù)據(jù)庫服務(wù)分離,分別布署在不一樣服務(wù)器上,應(yīng)用服務(wù)采取集群布署,達成性能上需求。圖2.1不一樣分級層次系統(tǒng)架構(gòu)圖
從企業(yè)信息系統(tǒng)架構(gòu)設(shè)計看,三層分布式架構(gòu)是一個經(jīng)典應(yīng)用;甚至能夠過渡到多層分布式架構(gòu),如擴展出緩存服務(wù)、負載均衡服務(wù)等;這些全部是用戶對系統(tǒng)快速響應(yīng)和系統(tǒng)可靠性需求。B/S架構(gòu)ERP系統(tǒng)B/S架構(gòu)ERP系統(tǒng)出現(xiàn)使得傳統(tǒng)ERP系統(tǒng)成為互聯(lián)網(wǎng)應(yīng)用,用戶借助網(wǎng)絡(luò)方便快捷,能夠隨時隨地辦公,處理業(yè)務(wù)數(shù)據(jù)?,F(xiàn)代企業(yè)一般存在多區(qū)域分支機構(gòu),或業(yè)務(wù)人員需要差旅或在家辦公,傳統(tǒng)C/S架構(gòu)日益不能滿足移動辦公需要,B/S架構(gòu)ERP系統(tǒng)剛好能夠處理這一需要。圖2.2B/S架構(gòu)ERP系統(tǒng)布署圖C/S架構(gòu)和B/S架構(gòu)優(yōu)缺點分析C/S系統(tǒng)優(yōu)缺點C/S模式優(yōu)點[1]:1)因為用戶端實現(xiàn)和服務(wù)器直接相連,沒有中間步驟,所以響應(yīng)速度快。(當數(shù)據(jù)少時,C/S在局域網(wǎng)內(nèi)響應(yīng)快;當數(shù)據(jù)超出十萬時,C/S軟件變慢,B/S軟件能維持穩(wěn)定速度)2)操作界面交互性強、控件組件形式多樣,能夠充足滿足用戶快速操作要求。3)C/S結(jié)構(gòu)管理信息系統(tǒng)能實現(xiàn)復(fù)雜數(shù)據(jù)處理操作,不用過多考慮網(wǎng)絡(luò)不穩(wěn)定性。C/S模式缺點:1)需要專門用戶端安裝程序,分布功效弱,針對點多面廣且不含有網(wǎng)絡(luò)條件用戶群體,不能夠?qū)崿F(xiàn)快速布署安裝和配置。2)兼容性差,對于不一樣開發(fā)工具,含有較大不足。若采取不一樣工具,需要重新改寫程序,跨平臺難度大,無法輕易實現(xiàn)Windows、Linux、iOS系統(tǒng)同時開發(fā)和布署。3)開發(fā)成本較高,需要含有一定專業(yè)水準技術(shù)人員才能完成。(就開發(fā)小型企業(yè)管理軟件,針對內(nèi)部使用系統(tǒng)而言,C/S開發(fā)人員比B/S開發(fā)人員成本低了很多)。B/S系統(tǒng)優(yōu)缺點B/S結(jié)構(gòu)優(yōu)點:1)是互聯(lián)網(wǎng)應(yīng)用,含有分布性特點,能夠隨時隨地進行查詢、瀏覽等業(yè)務(wù)處理。2)業(yè)務(wù)擴展簡單方便,經(jīng)過增加網(wǎng)頁即可增加服務(wù)器功效。3)維護簡單方便,只需要改變網(wǎng)頁,即可實現(xiàn)全部用戶同時更新。4)開發(fā)簡單,共享性強。
B/S結(jié)構(gòu)缺點:1)操作是以鼠標為最基礎(chǔ)操作方法,無法滿足快速操作要求,尤其是在大量數(shù)據(jù)錄入操作、復(fù)雜交互情況下,需要提升交互設(shè)計能力。2)頁面加載刷新時,響應(yīng)速度受網(wǎng)絡(luò)連接穩(wěn)定性影響。結(jié)論
現(xiàn)在,從架構(gòu)設(shè)計來看,ERP系統(tǒng)采取B/S架構(gòu)和C/S架構(gòu)是并存存在,B/S架構(gòu)系統(tǒng)更有發(fā)展前景,從長遠來看,因為互聯(lián)網(wǎng)發(fā)展,網(wǎng)絡(luò)帶寬提升,HTML5技術(shù)出現(xiàn)等原因,B/S架構(gòu)系統(tǒng)是未來發(fā)展趨勢。中國外最新ERP產(chǎn)品技術(shù)架構(gòu)主流ERP產(chǎn)品簡明介紹OracleEBusinessSuiteOracleEBS產(chǎn)品介紹
OracleEBS是OracleE-BusinessSuite縮寫,是Oracle企業(yè)ERP產(chǎn)品,全球銷量僅次于SAP(另一款ERP產(chǎn)品)。OracleEBS是一整套企業(yè)級應(yīng)用軟件,包含:采購管理、庫存管理、銷售管理、車間管理、物料清單及工藝管理、生產(chǎn)計劃、成本管理、應(yīng)付賬款管理、應(yīng)收賬款管理、現(xiàn)金管理、總帳管理、項目會計、項目制造、用戶關(guān)系管理、供給商門戶等模塊。純互聯(lián)網(wǎng)技術(shù)架構(gòu)Oracle電子商務(wù)套件采取標準100%基于互聯(lián)網(wǎng)三層體系架構(gòu);不管是數(shù)據(jù)庫層、應(yīng)用層和最前端最終用戶操作界面全部100%支持基于JAVA優(yōu)異互聯(lián)網(wǎng)技術(shù)[37]。
Oracle電子商務(wù)套件技術(shù)架構(gòu)特點,提供了軟件系統(tǒng)基于數(shù)據(jù)中心運行集中管理基礎(chǔ)。使全部相關(guān)軟件系統(tǒng)推廣、升級和日常維護工作能夠基于數(shù)據(jù)中心進行,從而達成最大程度地降低用戶端軟硬件和維護成本,降低服務(wù)器端軟件維護工作內(nèi)容。圖3.1Oracle應(yīng)用軟件技術(shù)架構(gòu)模塊化開放架構(gòu)Oracle電子商務(wù)套件應(yīng)用產(chǎn)品采取模塊化和組件化優(yōu)異軟件技術(shù)體系架構(gòu),應(yīng)用軟件產(chǎn)品能夠細化成為很多細粒度模塊,不一樣用戶應(yīng)用能夠選擇不一樣組件或模塊組合形成適合于企業(yè)需求軟件平臺方案;基于同一共享數(shù)據(jù)庫和統(tǒng)一數(shù)據(jù)模型數(shù)據(jù)層面高度集成架構(gòu),確保各應(yīng)用模塊之間緊密無縫集成和平滑業(yè)務(wù)流轉(zhuǎn)[37]。圖3.2Oracle電子商務(wù)套件模塊化開放架構(gòu)SAPNetWeaverSAPNetWeaver產(chǎn)品介紹
SAPNetWeaver是SAP集成技術(shù)平臺和自從SAPBusinessSuite以來全部SAP應(yīng)用技術(shù)基礎(chǔ)。SAPNetWeaver是一個面向服務(wù)應(yīng)用和集成平臺。SAPNetWeaver為SAP應(yīng)用提供開發(fā)和運行環(huán)境,也能夠用來和其它應(yīng)用和系統(tǒng)進行自定義開發(fā)和集成。SAPNetWeaver是使用開放標準和實際上工業(yè)標準進行開發(fā),能夠用icrosoft?NET,Sun燡avaEE,和IBM燱ebSphere等這些技術(shù)平臺進行擴展和互操作[44]。SAPNetWeaver技術(shù)架構(gòu)
SAP企業(yè)系統(tǒng)架構(gòu)是以SOA架構(gòu)技術(shù)作為基礎(chǔ)框架進行開發(fā)。ERP,CRM,SCM,SAPBusinessSuite,SRM,PLM系統(tǒng)全部是獨立子系統(tǒng),這些系統(tǒng)之間交互全部是經(jīng)過SOA服務(wù)進行。圖3.3SAP企業(yè)系統(tǒng)架構(gòu)用友U9用友U9產(chǎn)品介紹
用友U9完全基于SOA架構(gòu)世界級企業(yè)管理軟件,用友U9面向快速發(fā)展和成長中大型制造企業(yè)復(fù)雜應(yīng)用,以“實時企業(yè)、全球商務(wù)”為關(guān)鍵理念,完全適應(yīng)多組織供給鏈協(xié)同、多工廠制造協(xié)同、產(chǎn)業(yè)鏈協(xié)同、產(chǎn)品事業(yè)部和業(yè)務(wù)中心管理模式,更能支持多生產(chǎn)模式混合生產(chǎn)和計劃、多經(jīng)營模式混合管理、精益生產(chǎn)、全方面成本、跨國財務(wù)等深度應(yīng)用,含有高度靈活產(chǎn)品架構(gòu),幫助企業(yè)快速響應(yīng)改變,支持經(jīng)營、業(yè)務(wù)和管理模式創(chuàng)新。用友U9技術(shù)架構(gòu)
UFIDAU9完全采取面向服務(wù)架構(gòu)(SOA),實現(xiàn)了全程模型驅(qū)動開發(fā)(MDD)模式,達成降低集成和開發(fā)成本目標。UAP使企業(yè)管理軟件含有多項新技術(shù)應(yīng)用特點:企業(yè)信息資源變得可重用、透明化,而且系統(tǒng)含有高可擴展性,讓業(yè)務(wù)處理愈加高效、簡練、安全。UAP還提供了統(tǒng)一集成開發(fā)環(huán)境(IDE),用戶能夠使用包含企業(yè)建模、領(lǐng)域建模、服務(wù)設(shè)計、UI設(shè)計、報表設(shè)計、規(guī)則設(shè)計、數(shù)據(jù)庫設(shè)計等全方位設(shè)計器,并經(jīng)過可視化界面和友好交互操作,自動生成用戶所需要多種服務(wù)部件。UAP完全支持企業(yè)級集成和應(yīng)用協(xié)同,如Office集成、移動商務(wù)、企業(yè)搜索、智能用戶端等多項領(lǐng)域[35]。圖3.4用友U9技術(shù)架構(gòu)ERP系統(tǒng)架構(gòu)設(shè)計共同特點
經(jīng)過中國外最新ERP產(chǎn)品功效及技術(shù)架構(gòu)比較,得出:基于SOA架構(gòu)技術(shù)框架是共同采取,而且愈加強調(diào)了多設(shè)備支持,完全基于互聯(lián)網(wǎng)模式系統(tǒng)。產(chǎn)品名稱是否B/S是否SOA架構(gòu)是否模塊化構(gòu)建是否支持移動設(shè)備是否分布式布署OracleEBusinessSuite是是是支持是SAPNetWeaver是是是支持是用友U9是是是支持是金蝶EAS是是是支持是OpenERP(開源)是下一版本支持完全模塊化支持是表3.1各主流ERP產(chǎn)品系統(tǒng)架構(gòu)比較基于互聯(lián)網(wǎng)三層體系架構(gòu)
采取標準100%基于互聯(lián)網(wǎng)三層體系架構(gòu),不管是數(shù)據(jù)庫層、應(yīng)用層和最前端最終用戶操作界面全部100%支持WEB互聯(lián)網(wǎng)技術(shù),尤其是應(yīng)用層,直接采取互聯(lián)網(wǎng)優(yōu)異技術(shù),不需要任何中間轉(zhuǎn)換過程,在表現(xiàn)優(yōu)異互聯(lián)網(wǎng)技術(shù)同時,最大程度降低了中間步驟,確保了系統(tǒng)處理高性能和高穩(wěn)定性。面向服務(wù)架構(gòu)(SOA)
完全采取面向服務(wù)架構(gòu)(SOA),實現(xiàn)了全程模型驅(qū)動開發(fā)(MDD)模式,達成降低愈加強調(diào)系統(tǒng)基礎(chǔ),采取松耦合,降低系統(tǒng)耦合度。SOA實現(xiàn)方法全部是采取了基于Http協(xié)議WebService技術(shù),數(shù)據(jù)交換格式采取XML,SOAP。模塊化和組件化體系架構(gòu)模塊化和組件化優(yōu)異軟件技術(shù)體系架構(gòu),應(yīng)用軟件產(chǎn)品能夠細化成為很多細粒度模塊,不一樣用戶應(yīng)用能夠選擇不一樣組件或模塊組合形成適合于企業(yè)需求軟件平臺方案;基于同一共享數(shù)據(jù)庫和統(tǒng)一數(shù)據(jù)模型數(shù)據(jù)層面高度集成架構(gòu),確保各應(yīng)用模塊之間緊密無縫集成和平滑業(yè)務(wù)流轉(zhuǎn)。
基于SOA架構(gòu)ERP系統(tǒng)SOA技術(shù)介紹SOA概念及介紹SOA基礎(chǔ)概念
面向服務(wù)體系結(jié)構(gòu)(Service-OrientedArchitecture,SOA)是一個組件模型,它將應(yīng)用程序不一樣功效單元(稱為服務(wù))經(jīng)過這些服務(wù)之間定義良好接口和契約聯(lián)絡(luò)起來。接口是采取中立方法進行定義,它應(yīng)該獨立于實現(xiàn)服務(wù)硬件平臺、操作系統(tǒng)和編程語言。這使得構(gòu)建在多種多樣系統(tǒng)中服務(wù)能夠使用一個統(tǒng)一和通用方法進行交互[26]。介紹SOA(Service-OrientedArchitecture),面向服務(wù)架構(gòu),它能夠依據(jù)需求經(jīng)過網(wǎng)絡(luò)對松散耦合粗粒度應(yīng)用組件進行分布式布署、組合和使用。服務(wù)層是SOA基礎(chǔ),能夠直接被應(yīng)用調(diào)用,從而有效控制系統(tǒng)中和軟件代理交互人為依靠性。SOA是一個粗粒度、松耦合服務(wù)架構(gòu),服務(wù)之間經(jīng)過簡單、正確定義接口進行通訊,不包含底層編程接口和通訊模型。SOA能夠看作是B/S模型、XML/WebService技術(shù)以后自然延伸。SOA技術(shù)優(yōu)勢
經(jīng)過SOA思想引入,使得ERP軟件能夠做到[50]:
1)支持異構(gòu)集成
所謂異構(gòu)環(huán)境,包含四個層次,硬件平臺、操作系統(tǒng)、數(shù)據(jù)庫、應(yīng)用軟件。假如一套硬件、一套操作系統(tǒng)、一套數(shù)據(jù)庫、一套應(yīng)用軟件能夠面面俱四處理集團企業(yè)全部管理問題,那是再好不過了。但現(xiàn)實中是不可能,更普遍是,不一樣應(yīng)用往往選擇不一樣平臺和應(yīng)用系統(tǒng),方便充足發(fā)揮各個廠商專長。支持SOAERP系統(tǒng)為集團企業(yè)信息化提供了伸縮空間,企業(yè)能夠依據(jù)需要選擇最適宜處理方案。
2)降低企業(yè)IT成本
以往多數(shù)企業(yè)在建設(shè)企業(yè)ERP系統(tǒng)時是從項目標角度出發(fā),比如ERP項目、CRM項目等,事后當企業(yè)IT系統(tǒng)越來越多時候,才會考慮系統(tǒng)集成問題,但這時候往往集成難度就很大了。而SOA要求企業(yè)在建設(shè)IT系統(tǒng)之初就要考慮這些問題,也就是要考慮服務(wù)之間接口問題。這么就會使企業(yè)IT成本大大降低。
同時,SOA將改變以往軟件購置模式?,F(xiàn)在,多數(shù)企業(yè)在購置軟件時往往是成熟性軟件,需一個模塊或一個系統(tǒng)購置,企業(yè)在購置時往往無法將那些企業(yè)不需要功效剔除出去,這么,企業(yè)就不得不為此多付出資金、培訓成本等很多無須要成本。而支持SOA集團財務(wù)軟件則能夠幫助企業(yè)實現(xiàn)真正按需購置,企業(yè)需要什么功效就購置對應(yīng)服務(wù),幫助企業(yè)避免無須要支出。
3)實現(xiàn)企業(yè)動態(tài)變革
支持SOA集團財務(wù)系統(tǒng)使企業(yè)IT人員無須太多關(guān)心企業(yè)IT系統(tǒng)底層技術(shù),而更多去考慮集團財務(wù)業(yè)務(wù)處理和財務(wù)業(yè)務(wù)和IT接合。同時,以往企業(yè)在開發(fā)集團財務(wù)系統(tǒng)時,在反復(fù)功效上浪費了大量人力和財力,同時系統(tǒng)在開發(fā)完成后,假如企業(yè)業(yè)務(wù)改變,系統(tǒng)將極難更改或更改成本很高。而SOA面正確是一個個獨立服務(wù),服務(wù)之間能夠經(jīng)過標準接口來相互調(diào)用,這么企業(yè)在反復(fù)功效上就能夠直接經(jīng)過接口調(diào)用,而無須去重新開發(fā)。企業(yè)業(yè)務(wù)發(fā)生改變時,只需要修改相對應(yīng)服務(wù)即可,降低了修改難度和復(fù)雜度,確保了企業(yè)IT系統(tǒng)動態(tài)改變?;赟OA技術(shù)體系結(jié)構(gòu)SOA是松耦合系統(tǒng)
這種含有中立接口定義(沒有強制綁定到特定實現(xiàn)上)特征稱為服務(wù)之間松耦合。松耦合系統(tǒng)好處有兩點:
1)是它靈活性,當組成整個應(yīng)用程序每個服務(wù)內(nèi)部結(jié)構(gòu)和實現(xiàn)逐步地發(fā)生改變時,它能夠繼續(xù)存在。
2)而其次,緊耦合意味著應(yīng)用程序不一樣組件之間接口和其功效和結(jié)構(gòu)是緊密相連,所以當需要對部分或整個應(yīng)用程序進行某種形式更改時,它們就顯得很脆弱。對松耦合系統(tǒng)需要起源于業(yè)務(wù)應(yīng)用程序需要依據(jù)業(yè)務(wù)需要變得愈加靈活,以適應(yīng)不停改變環(huán)境,比如常常改變政策、業(yè)務(wù)等級、業(yè)務(wù)關(guān)鍵、合作伙伴關(guān)系、行業(yè)地位和其它和業(yè)務(wù)相關(guān)原因,這些原因甚至會影響業(yè)務(wù)性質(zhì)。我們稱能夠靈活地適應(yīng)環(huán)境改變業(yè)務(wù)為按需(Ondemand)業(yè)務(wù),在按需業(yè)務(wù)中,一旦需要,就能夠?qū)ν瓿苫驅(qū)嵤┤蝿?wù)方法進行必需更改。SOA系統(tǒng)原型一個經(jīng)典例子是通用對象請求代理體系結(jié)構(gòu)(CommonObjectRequestBrokerArchitecture,CORBA),它已經(jīng)出現(xiàn)很長時間了,其定義概念和SOA相同。然而,現(xiàn)在SOA已經(jīng)有所不一樣了,經(jīng)過使用基于XML語言(稱為Web服務(wù)描述語言(WebServicesDefinitionLanguage,WSDL))來描述接口,服務(wù)已經(jīng)轉(zhuǎn)到愈加動態(tài)且更靈活接口系統(tǒng)中,非以前CORBA中接口描述語言(InterfaceDefinitionLanguage,IDL)可比了。SOA體系結(jié)構(gòu)作用
傳統(tǒng)企業(yè)(數(shù)據(jù)庫)應(yīng)用軟件產(chǎn)品,如MRP、ERP、OA系統(tǒng)等,在設(shè)計或架構(gòu)上全部是緊偶合、封閉式、自成體系,屬于一次性投入一次性完結(jié)產(chǎn)品。這么產(chǎn)品極難適應(yīng)或快速響應(yīng)市場或用戶靈活多變需求,和后續(xù)擴展。在這么市場、及用戶需求下,從而催生了軟件產(chǎn)品一個新設(shè)計或架構(gòu)理念:面向服務(wù)架構(gòu)(SOA架構(gòu))。
對SOA需要起源于需要使業(yè)務(wù)IT系統(tǒng)變得愈加靈活,以適應(yīng)業(yè)務(wù)中改變。經(jīng)過許可強定義關(guān)系和仍然靈活特定實現(xiàn),IT系統(tǒng)既能夠利用現(xiàn)有系統(tǒng)功效,又能夠準備在以后做部分改變來滿足它們之間交互需要。
SOA是一場革命。一個應(yīng)用程序業(yè)務(wù)邏輯(businesslogic)或一些單獨功效被模塊化并作為服務(wù)展現(xiàn)給消費者或用戶端。這些服務(wù)關(guān)鍵是她們松耦合特征。比如,服務(wù)接口和實現(xiàn)相獨立。應(yīng)用開發(fā)人員或系統(tǒng)集成者能夠經(jīng)過組合一個或多個服務(wù)來構(gòu)建應(yīng)用,而無須了解服務(wù)底層實現(xiàn)。舉例來說,一個服務(wù)能夠用.NET或J2EE來實現(xiàn),而使用該服務(wù)應(yīng)用程序能夠在不一樣平臺之上,使用語言也能夠不一樣。讓SOA系統(tǒng)適應(yīng)改變能力是最關(guān)鍵部分,對于開發(fā)人員來說,這么改變不管是在她們工作范圍之內(nèi)還是在她們工作范圍之外全部有可能發(fā)生,這取決于是否有改變需要知道接口是怎樣定義和它們相互之間怎樣進行交互。和開發(fā)人員不一樣是,架構(gòu)師作用就是引發(fā)對SOA模型大改變。這種分工,就是讓開發(fā)人員集中精力于創(chuàng)建作為服務(wù)定義功效單元,而讓架構(gòu)師和建模人員集中精力于怎樣將這些單元合適地組織在一起,它已經(jīng)有十多年歷史了,通常見統(tǒng)一建模語言(UniversalModelingLanguage,UML),而且描述成模型驅(qū)動體系結(jié)構(gòu)(Model-DrivenArchitecture,MDA)。SOA架構(gòu)定義或特征
SOA架構(gòu),是一個粗粒度、開放式、松耦合服務(wù)結(jié)構(gòu),要求軟件產(chǎn)品在開發(fā)過程中,按攝影關(guān)標準或協(xié)議,進行分層開發(fā)。經(jīng)過這種分層設(shè)計或架構(gòu)體系能夠使軟件產(chǎn)品變得愈加彈性和靈活,且盡可能和第三方軟件產(chǎn)品互補兼容,以達成快速擴展,滿足或響應(yīng)市場或用戶需求多樣化、多變性。一個經(jīng)典SOA架構(gòu)示意以下:圖4.1SOA架構(gòu)系統(tǒng)圖示基于SOA技術(shù)架構(gòu)價值未來企業(yè)應(yīng)變之道
連續(xù)增加用戶需求、瞬息萬變市場和日趨猛烈全球化競爭,使得企業(yè)必需不停提升本身IT及企業(yè)管理系統(tǒng)靈敏性和適應(yīng)性。現(xiàn)在,每個企業(yè)全部需要把握業(yè)務(wù)步驟發(fā)展變革,估計業(yè)務(wù)環(huán)境改變,方便對競爭者做出快速響應(yīng),確保企業(yè)生存、發(fā)展和快速成長[27]。
面向服務(wù)架構(gòu)技術(shù)(Service-OrientedArchitecture,SOA)出現(xiàn),標志著設(shè)計、開發(fā)、布署新企業(yè)應(yīng)用系統(tǒng),并將其和原有應(yīng)用系統(tǒng)、業(yè)務(wù)步驟進行集成方法出現(xiàn)了根本性改變。
采取SOA架構(gòu),能夠帶來顯著商業(yè)和技術(shù)利益:
1)提升商業(yè)決議能力,經(jīng)過將商業(yè)服務(wù)和信息進行聚合成為一系列動態(tài)、組合商業(yè)應(yīng)用,企業(yè)決議者能夠更便捷地取得更正確、更全方面、更深入信息,能夠更靈敏地對多種改變做出反應(yīng)。
2)取得更高職員生產(chǎn)率,SOA能夠改善商業(yè)步驟,使得職員愈加關(guān)注關(guān)鍵性、增值業(yè)務(wù)步驟,基于服務(wù)愈加好地進行協(xié)作,經(jīng)過多種方法訪問和操作業(yè)務(wù)數(shù)據(jù)和信息,大大提升生產(chǎn)率。
3)建立和供給商和用戶更強聯(lián)絡(luò),SOA增強了端到端應(yīng)用模式,跨越企業(yè)組織邊界,愈加好地集成現(xiàn)有信息系統(tǒng),經(jīng)過服務(wù)編排和聚合,使其愈加好地融合在業(yè)務(wù)步驟里。
4)能夠愈加快、更節(jié)省地搭建IT和業(yè)務(wù)應(yīng)用系統(tǒng),基于SOA和標準化服務(wù)組件,能夠依據(jù)業(yè)務(wù)步驟需要,愈加快地搭建業(yè)務(wù)系統(tǒng);同時,也能夠愈加好地利用原有IT和業(yè)務(wù)系統(tǒng)投資,并確保其符合業(yè)務(wù)步驟需要。
5)能夠增強IT和業(yè)務(wù)系統(tǒng)可管理性和安全性,經(jīng)過安全服務(wù)布署和SOA治理,能夠?qū)崿F(xiàn)更強安全性管理和監(jiān)控,確保了整個架構(gòu)置于統(tǒng)籌和管理之下。完全SOA架構(gòu)所帶來價值
1)確??傮w架構(gòu)合理計劃,全方面整合信息,根本消除應(yīng)用孤島,全方面實現(xiàn)過程、人員和信息實質(zhì)集成、高度協(xié)調(diào),實現(xiàn)更高互操作性和協(xié)同、更靈敏業(yè)務(wù)步驟、更全方面信息可見性;
2)企業(yè)IT及應(yīng)用系統(tǒng)架構(gòu)將更具伸縮性,IT價值將得到充足發(fā)揮,全方面提升未來企業(yè)競爭優(yōu)勢;
3)降低集成成本和風險,降低維護成本:伴隨企業(yè)業(yè)務(wù)發(fā)展,非SOA應(yīng)用在IT和應(yīng)用系統(tǒng)中相互集成成本和風險日益增大,系統(tǒng)運行將變得繁冗和低效;對應(yīng)地,為維護應(yīng)用孤島及更多步驟接口,甚至是反復(fù)、重合業(yè)務(wù)功效系統(tǒng),企業(yè)IT及應(yīng)用系統(tǒng)維護成本將不可避免地日益增大。
4)基于SOA架構(gòu)IT及應(yīng)用系統(tǒng)能夠增量布署到位,但毫無疑問,選擇完全SOA架構(gòu)是正確、長遠和明智決議。SOA實現(xiàn)方法-WebServiceWebService概念
WebService是一個構(gòu)建應(yīng)用程序普遍模型,能夠在任何支持網(wǎng)絡(luò)通信操作系統(tǒng)中實施運行;它是一個新web應(yīng)用程序分支,是自包含、自描述、模塊化應(yīng)用,能夠公布、定位、經(jīng)過web調(diào)用。WebService是一個應(yīng)用組件,它邏輯性為其它應(yīng)用程序提供數(shù)據(jù)和服務(wù).各應(yīng)用程序經(jīng)過網(wǎng)絡(luò)協(xié)議和要求部分標準數(shù)據(jù)格式(Http,XML,Soap)來訪問WebService,經(jīng)過WebService內(nèi)部實施得到所需結(jié)果.WebService能夠?qū)嵤暮唵握埱蟮綇?fù)雜商務(wù)處理任何功效。一旦布署以后,其它WebService應(yīng)用程序能夠發(fā)覺并調(diào)用它布署服務(wù)[28]。WebService關(guān)鍵技術(shù)和規(guī)則技術(shù)和規(guī)則
在構(gòu)建和使用WebService時,關(guān)鍵用到以下多個關(guān)鍵技術(shù)和規(guī)則:1)XML:描述數(shù)據(jù)標準方法.2)SOAP:簡單對象訪問協(xié)議.3)WSDL:Web服務(wù)描述語言.4)UDDI(UniversalDescription,DiscoveryandIntegration):通用描述、發(fā)覺和集成,它是一個獨立于平臺,基于XML語言用于在互聯(lián)網(wǎng)上描述商務(wù)協(xié)議。相關(guān)實際上,WebService關(guān)鍵目標是跨平臺可互操作性。為了達成這一目標,WebService完全基于XML(可擴展標識語言)、XSD(XMLSchema)等獨立于平臺、獨立于軟件供給商標準,是創(chuàng)建可互操作、分布式應(yīng)用程序新平臺。由此能夠看出,在以下三種情況下,使用WebService會帶來極大好處。具體以下:1)跨防火墻通信假如應(yīng)用程序有成千上萬用戶,而且分布在世界各地,那么用戶端和服務(wù)器之間通信將是一個棘手問題。因為用戶端和服務(wù)器之間通常會有防火墻或代理服務(wù)器。在這種情況下,使用DCOM就不是那么簡單,通常也不便于把用戶端程序公布到數(shù)量如此龐大每一個用戶手中。傳統(tǒng)做法是,選擇用瀏覽器作為用戶端,寫下一大堆ASP頁面,把應(yīng)用程序中間層暴露給最終用戶。這么做結(jié)果是開發(fā)難度大,程序極難維護。2)應(yīng)用程序集成企業(yè)級應(yīng)用程序開發(fā)者全部知道,企業(yè)里常常全部要把用不一樣語言寫成、在不一樣平臺上運行多種程序集成起來,而這種集成將花費很大開發(fā)力量。應(yīng)用程序常常需要從運行在IBM主機上程序中獲取數(shù)據(jù);或把數(shù)據(jù)發(fā)送到主機或UNIX應(yīng)用程序中去。即使在同一個平臺上,不一樣軟件廠商生產(chǎn)多種軟件也常常需要集成起來。經(jīng)過WebService,應(yīng)用程序能夠用標準方法把功效和數(shù)據(jù)“暴露”出來,供其它應(yīng)用程序使用。3)B2B集成用WebService集成應(yīng)用程序,能夠使企業(yè)內(nèi)部商務(wù)處理愈加自動化。但當交易跨越供給商和用戶、突破企業(yè)界限時會怎么樣呢?跨企業(yè)商務(wù)交易集成通常叫做B2B集成。WebService是B2B集成成功關(guān)鍵。經(jīng)過WebService,企業(yè)能夠把關(guān)鍵商務(wù)應(yīng)用“暴露”給指定供給商和用戶。比如,把電子下單系統(tǒng)和電子發(fā)票系統(tǒng)“暴露”出來,用戶就能夠以電子方法發(fā)送訂單,供給商則能夠以電子方法發(fā)送原料采購發(fā)票。當然,這并不是一個新概念,EDI(電子文檔交換)早就是這么了。不過,WebService實現(xiàn)要比EDI簡單得多,而且WebService運行在Internet上,在世界任何地方全部可輕易實現(xiàn),其運行成本就相對較低。不過,WebService并不像EDI那樣,是文檔交換或B2B集成完整處理方案。WebService只是B2B集成一個關(guān)鍵部分,還需要很多其它部分才能實現(xiàn)集成。用WebService來實現(xiàn)B2B集成最大好處于于能夠輕易實現(xiàn)互操作性。只要把商務(wù)邏輯“暴露”出來,成為WebService,就能夠讓任何指定合作伙伴調(diào)用這些商務(wù)邏輯,而不管她們系統(tǒng)在什么平臺上運行,使用什么開發(fā)語言。這么就大大降低了花在B2B集成上時間和成本,讓很多原本無法承受EDI中小企業(yè)也能實現(xiàn)B2B集成。4)軟件和數(shù)據(jù)重用軟件重用是一個很大專題,重用形式很多,重用程度有大有小。最基礎(chǔ)形式是源代碼模塊或類一級重用,另一個形式是二進制形式組件重用。WebService在許可重用代碼同時,能夠重用代碼背后數(shù)據(jù)。使用WebService,再也無須像以前那樣,要先從第三方購置、安裝軟件組件,再從應(yīng)用程序中調(diào)用這些組件;只需要直接調(diào)用遠端WebService就能夠了。舉個例子,要在應(yīng)用程序中確定用戶輸入地址,只需把這個地址直接發(fā)送給對應(yīng)WebService,這個WebService就會幫你查閱街道地址、城市、省區(qū)和郵政編碼等信息,確定這個地址是否在對應(yīng)郵政編碼區(qū)域。WebService提供商能夠按時間或使用次數(shù)來對這項服務(wù)進行收費。這么服務(wù)要經(jīng)過組件重用來實現(xiàn)是不可能,那樣話你必需下載并安裝好包含街道地址、城市、省區(qū)和郵政編碼等信息數(shù)據(jù)庫,而且這個數(shù)據(jù)庫還是不能實時更新。另一個軟件重用情況是,把好多個應(yīng)用程序功效集成起來。比如,要建立一個局域網(wǎng)上門戶站點應(yīng)用,讓用戶既能夠查詢聯(lián)邦快遞包裹,查看股市行情,又能夠管理自己日程安排,還能夠在線購置電影票?,F(xiàn)在Web上有很多應(yīng)用程序供給商,全部在其應(yīng)用中實現(xiàn)了這些功效。一旦她們把這些功效全部經(jīng)過WebService“暴露”出來,就能夠很輕易地把全部這些功效全部集成到你門戶站點中,為用戶提供一個統(tǒng)一、友好界面。未來,很多應(yīng)用程序全部會利用WebService,把目前基于組件應(yīng)用程序結(jié)構(gòu)擴展為組件/WebService混合結(jié)構(gòu),能夠在應(yīng)用程序中使用第三方WebService提供功效,也能夠把自己應(yīng)用程序功效經(jīng)過WebService提供給她人。兩種情況下,全部能夠重用代碼和代碼背后數(shù)據(jù)。SOAWebService實現(xiàn)
SOA是一個軟件架構(gòu),而不是局限于某個技術(shù)組合,它超越了技術(shù)范圍。SOA關(guān)鍵是“服務(wù)”。W3C將服務(wù)定義為:“服務(wù)提供者完成一組工作,為服務(wù)使用者交付所需最終止果。最終止果通常是使用者狀態(tài)發(fā)生改變,但也可能是提供者狀態(tài)改變,或雙方全部產(chǎn)生改變”。服務(wù)是網(wǎng)絡(luò)中可用軟件資源。服務(wù)提供者經(jīng)過標準機制提供服務(wù),使用者經(jīng)過網(wǎng)絡(luò)有計劃地使用服務(wù)。服務(wù)貯備庫公布服務(wù)所在位置,并在使用者請求服務(wù)時定位服務(wù)。服務(wù)使用者和提供者角色不是惟一,服務(wù)提供者也能夠是使用者,反之亦然。SOA具體實現(xiàn)有很多,包含WebService,Ses-sionBean,JINI等,但伴隨WebService技術(shù)被越來越重視,其己經(jīng)成為構(gòu)建SOA關(guān)鍵技術(shù)。圖4.2標準WebService技術(shù)和SOA架構(gòu)系統(tǒng)對比
從上圖比較得出,SOA自治WebService實現(xiàn)架構(gòu)中,增加了對服務(wù)管理,包含:業(yè)務(wù)對象管理、業(yè)務(wù)步驟管理,服務(wù)策略,服務(wù)安全等考慮?;赟OAApplication為何選擇SOA?不一樣種類操作系統(tǒng),應(yīng)用軟件,系統(tǒng)軟件和應(yīng)用基礎(chǔ)結(jié)構(gòu)(applicationinfrastructure)相互交織,這便是IT企業(yè)現(xiàn)實狀況。部分現(xiàn)存應(yīng)用程序被用來處理目前業(yè)務(wù)步驟(businessprocesses),所以從頭建立一個新基礎(chǔ)環(huán)境是不可能。企業(yè)應(yīng)該能對業(yè)務(wù)改變做出快速反應(yīng),利用對現(xiàn)有應(yīng)用程序和應(yīng)用基礎(chǔ)結(jié)構(gòu)(applicationinfrastructure)投資來處理新業(yè)務(wù)需求,為用戶,商業(yè)伙伴和供給商提供新互動渠道,并展現(xiàn)一個能夠支持有機業(yè)務(wù)(organicbusiness)構(gòu)架。SOA憑借其松耦合特征,使得企業(yè)能夠根據(jù)模塊化方法來添加新服務(wù)或更新現(xiàn)有服務(wù),以處理新業(yè)務(wù)需要,提供選擇從而能夠經(jīng)過不一樣渠道提供服務(wù),并能夠把企業(yè)現(xiàn)有或已經(jīng)有應(yīng)用作為服務(wù),從而保護了現(xiàn)有IT基礎(chǔ)建設(shè)投資。圖4.3采取SOA架構(gòu)應(yīng)用示例基于SOAERP系統(tǒng)架構(gòu)設(shè)計SOA架構(gòu)基礎(chǔ)技術(shù)SOA服務(wù)架構(gòu)為了實現(xiàn)SOA,企業(yè)需要一個服務(wù)架構(gòu),服務(wù)消費者(serviceconsumer)能夠經(jīng)過發(fā)送消息來調(diào)用服務(wù)。這些消息由一個服務(wù)總線(servicebus)轉(zhuǎn)換后發(fā)送給合適服務(wù)實現(xiàn)。這種服務(wù)架構(gòu)能夠提供一個業(yè)務(wù)規(guī)則引擎(businessrulesengine),該引擎許可業(yè)務(wù)規(guī)則被合并在一個服務(wù)里或多個服務(wù)里。這種架構(gòu)也提供了一個服務(wù)管理基礎(chǔ)(servicemanagementinfrastructure),用來管理服務(wù),類似審核,列表(billing),日志等功效。另外,該架構(gòu)給企業(yè)提供了靈活業(yè)務(wù)步驟,愈加好地處理控制請求(regulatoryrequirement),比如SarbanesOxley(SOX),而且能夠在不影響其它服務(wù)情況下更改某項服務(wù)[29]。圖4.4SOA服務(wù)架構(gòu)SOA基礎(chǔ)結(jié)構(gòu)要運行,管理SOA應(yīng)用程序,企業(yè)需要SOA基礎(chǔ),這是SOA平臺一個部分。SOA基礎(chǔ)必需支持全部相關(guān)標準,和需要運行時容器[29]。圖4.5SOA基礎(chǔ)架構(gòu)SOAP,WSDL,UDDIWSDL,UDDI和SOAP是SOA基礎(chǔ)基礎(chǔ)部件。WSDL用來描述服務(wù);UDDI用來注冊和查找服務(wù);而SOAP,作為傳輸層,用來在消費者和服務(wù)提供者之間傳送消息。SOAP是Web服務(wù)默認機制,其它技術(shù)為能夠服務(wù)實現(xiàn)其它類型綁定。一個消費者能夠在UDDI注冊表(registry)查找服務(wù),取得服務(wù)WSDL描述,然后經(jīng)過SOAP來調(diào)用服務(wù)。WS-IBasicProfileWS-IBasicProfile,由Web服務(wù)互用性組織(WebServicesInteroperabilityOrganization)提供,是SOA服務(wù)測試和互用性所需要關(guān)鍵構(gòu)件。服務(wù)提供者能夠使用BasicProfile測試程序來測試服務(wù)在不一樣平臺和技術(shù)上互用性。J2EE和.Net盡管J2EE和。NET平臺是開發(fā)SOA應(yīng)用程序常見平臺,但SOA不僅限于此。像J2EE這類平臺,不僅為開發(fā)者自然而然地參與到SOA中來提供了一個平臺,還經(jīng)過她們內(nèi)在特征,將可擴展性,可靠性,可用性和性能引入了SOA世界。新規(guī)范,比如JAXB(JavaAPIforXMLBinding),用于將XML文檔定位到Java類;JAXR(JavaAPIforXMLRegistry)用來規(guī)范對UDDI注冊表(registry)操作;XML-RPC(JavaAPIforXML-basedRemoteProcedureCall)在J2EE1.4中用來調(diào)用遠程服務(wù),這使得開發(fā)和布署可移植于標準J2EE容器Web服務(wù)變得輕易,和此同時,實現(xiàn)了跨平臺(如。NET)服務(wù)互用。服務(wù)品質(zhì)在企業(yè)中,關(guān)鍵任務(wù)系統(tǒng)(mission-criticalsystem,譯注:關(guān)鍵任務(wù)系統(tǒng)是指假如一個系統(tǒng)可靠性對于一個組織是至關(guān)關(guān)鍵,那么該系統(tǒng)就是該企業(yè)關(guān)鍵任務(wù)系統(tǒng)。比如,電話系統(tǒng)對于一個電話促銷企業(yè)來說就是關(guān)鍵任務(wù)系統(tǒng),而文字處理系統(tǒng)就不那么關(guān)鍵了。)用來處理高級需求,比如安全性,可靠性,事物。當一個企業(yè)開始采取服務(wù)架構(gòu)作為工具來進行開發(fā)和布署應(yīng)用時候,基礎(chǔ)Web服務(wù)規(guī)范,像WSDL,SOAP,和UDDI就不能滿足這些高級需求。正如前面所提到,這些需求也稱作服務(wù)品質(zhì)(QoS,qualityofservices)。和QoS相關(guān)眾多規(guī)范已經(jīng)由部分標準化組織(standardsbodies)提出,像W3C(WorldWideWebConsortium)和OASIS(theOrganizationfortheAdvancementofStructuredInformationStandards)。下面部分將會討論部分QoS服務(wù)和相關(guān)標準。安全Web服務(wù)安全規(guī)范用來確保消息安全性。該規(guī)范關(guān)鍵包含認證交換,消息完整性和消息保密。該規(guī)范吸引人地方在于它借助現(xiàn)有安全標準,比如,SAML(asSecurityAssertionMarkupLanguage)來實現(xiàn)web服務(wù)消息安全。OASIS正致力于Web服務(wù)安全規(guī)范制訂。可靠在經(jīng)典SOA環(huán)境中,服務(wù)消費者和服務(wù)提供者之間會有多個不一樣文檔在進行交換。含有諸如“僅且僅僅傳送一次”(once-and-only-oncedelivery),“最多傳送一次”(at-most-oncedelivery),“反復(fù)消息過濾”(duplicatemessageelimination),“確保消息傳送”(guaranteedmessagedelivery)等特征消息發(fā)送和確定,在關(guān)鍵任務(wù)系統(tǒng)(mission-criticalsystems)中變得十分關(guān)鍵。WS-Reliability和WS-ReliableMessaging是兩個用來處理這類問題標準。這些標準現(xiàn)在全部由OASIS負責。策略服務(wù)提供者有時候會要求服務(wù)消費者和某種策略通信。比如,服務(wù)提供商可能會要求消費者提供Kerberos安全標示,才能取得某項服務(wù)。這些要求被定義為策略斷言(policyassertions)。一項策略可能會包含多個斷言。WS-Policy用來標準化服務(wù)消費者和服務(wù)提供者之間策略通信??刂飘斊髽I(yè)著手于服務(wù)架構(gòu)時,服務(wù)能夠用來整合數(shù)據(jù)倉庫(silosofdata),應(yīng)用程序,和組件。整合應(yīng)用意味著比如異步通信,并行處理,數(shù)據(jù)轉(zhuǎn)換,和校正等進程請求必需被標準化。在SOA中,進程是使用一組離散服務(wù)創(chuàng)建。BPEL4WS或WSBPEL(WebServiceBusinessProcessExecutionLanguage)是用來控制這些服務(wù)語言。WSBPEL現(xiàn)在也由OASIS負責。管理伴隨企業(yè)服務(wù)增加,所使用服務(wù)和業(yè)務(wù)進程數(shù)量也隨之增加,一個用來讓系統(tǒng)管理員管理全部運行在多相環(huán)境下服務(wù)管理系統(tǒng)就顯得尤為關(guān)鍵。WSDM(WebServicesforDistributedManagement)要求了任何依據(jù)WSDM實現(xiàn)服務(wù)全部能夠由一個WSDM適應(yīng)(WSDM-compliant)管理方案來管理。其它qos特征,比如合作方之間溝通和通訊,多個服務(wù)之間事務(wù)處理,全部在WS-Coordination和WS-Transaction標準中描述,這些全部是OASIS工作。SOA架構(gòu)設(shè)計方案
系統(tǒng)采取面向服務(wù)架構(gòu)來設(shè)計其體系結(jié)構(gòu),每一層具體功效以下:圖4.6基于SOA架構(gòu)ERP系統(tǒng)架構(gòu)設(shè)計
1)應(yīng)用表示層采取Portal技術(shù)建立企業(yè)信息門戶,經(jīng)過標準接口和服務(wù)提供方和服務(wù)注冊中心通訊,達成查詢和綁定服務(wù)目標。功效設(shè)計中將利用服務(wù)層和業(yè)務(wù)步驟編排層提供服務(wù)和業(yè)務(wù)應(yīng)用步驟,和引入其它外部WebService,利用了最新Web2.0技術(shù),包含Ajax、RSS、WebGIS等等來增強用戶體驗。
2)業(yè)務(wù)步驟編排層集成了多種業(yè)務(wù)規(guī)則和邏輯規(guī)則,將服務(wù)層提供服務(wù)編排成業(yè)務(wù)應(yīng)用步驟,滿足了靈活重組企業(yè)內(nèi)部步驟要求。
3)服務(wù)層由多種粒度服務(wù)組成,關(guān)鍵分為粗粒度服務(wù)和細粒度服務(wù),并按功效不一樣將它們分成四類提供給不一樣用戶使用。這四類包含:技術(shù)功效、業(yè)務(wù)功效、業(yè)務(wù)事務(wù)和業(yè)務(wù)步驟。其中技術(shù)功效關(guān)鍵是由運行基礎(chǔ)提供多種服務(wù),業(yè)務(wù)功效則是由組件層公布上來細粒度服務(wù)。業(yè)務(wù)事務(wù)則是粒度稍大服務(wù)。粒度最大是業(yè)務(wù)步驟服務(wù)。在該層經(jīng)過業(yè)務(wù)服務(wù)總線(BSB)完成細粒度服務(wù)到粗粒度服務(wù)整合,從而實現(xiàn)ERP系統(tǒng)整體功效。本層關(guān)鍵功效在于分類組織組件層公布上來多種服務(wù)、SOA運行基礎(chǔ)提供功效服務(wù)和從外部引入多種服務(wù)。
4)組件層關(guān)鍵向上提供包含到多種企業(yè)應(yīng)用接入組件,以實現(xiàn)系統(tǒng)中不一樣功效模塊,并經(jīng)過WebService接口被包裝成WebService公布到在組件層之上服務(wù)層,同時組件層預(yù)留其它類型接口供系統(tǒng)調(diào)用。
5)系統(tǒng)層,關(guān)鍵是提供滿足ERP系統(tǒng)基礎(chǔ)架構(gòu),如企業(yè)ERP系統(tǒng)中通常需要集成各個應(yīng)用系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)。通常各個應(yīng)用系統(tǒng)之間是相互獨立,她們將經(jīng)過系統(tǒng)架構(gòu)中組件層接入整個SOA企業(yè)信息系統(tǒng)中并受BusinessIntelligence控制。在系統(tǒng)層,經(jīng)過面向?qū)ο蠹夹g(shù)完成組件層和數(shù)據(jù)庫交互。SOA架構(gòu)實現(xiàn)
為了實現(xiàn)構(gòu)建大型,分布多層企業(yè)應(yīng)用技術(shù),使系統(tǒng)含有語言無關(guān)、再開發(fā)、可移植性和高性能等優(yōu)點,我們選擇.NET平臺作為基于SOAWeb服務(wù)開發(fā)實現(xiàn)平臺。結(jié)合WebServices,采取xfire公布框架完成SOA架構(gòu)實現(xiàn)。
1)應(yīng)用表示層技術(shù)實現(xiàn)
經(jīng)過AMVC3.0框架對web服務(wù)良好支持完成Web層開發(fā),以達成表現(xiàn)給用戶一個直觀而且簡單易于使用用戶界面。在表示層中同時采取和AJAX技術(shù)相結(jié)合,讓系統(tǒng)頁面在性能上含有比通常Web頁面愈加快響應(yīng)速度。
2)業(yè)務(wù)步驟編排層技術(shù)實現(xiàn)
因為系統(tǒng)業(yè)務(wù)步驟比較靈活,本文采取基于標準可擴展WSDL和BPEL(Web服務(wù)業(yè)務(wù)步驟實施語言)來定義和描述步驟。在BPEL中經(jīng)過使用結(jié)構(gòu)化活動來定義這些活動之間相互關(guān)系從而創(chuàng)建出復(fù)雜步驟,這有利于系統(tǒng)開放性和通用性。在此基礎(chǔ)上采取Web服務(wù)完成步驟到前臺應(yīng)用系統(tǒng)接口,Web服務(wù)向內(nèi)經(jīng)過多種控件完成步驟操作和管理,向外為前臺開發(fā)提供了一個結(jié)構(gòu)松散、異步操作和含有分布式支撐能力統(tǒng)一接口。
3)Webservice公布框架
WebService(Web服務(wù))技術(shù)則是一個關(guān)鍵實現(xiàn)方法。Webservice公布關(guān)鍵由xfire實現(xiàn),xfire是一個無償開源SOAP框架,在它代碼中有一個輕量級信息處理模塊經(jīng)過STAX來和SOAP信息相結(jié)合。它不僅能夠極大方便地實現(xiàn)這么一個環(huán)境,而且能夠提供很多WebServices規(guī)范中高級特征,這些特征在多數(shù)商業(yè)或開源工具全部沒有提供。SOA架構(gòu)服務(wù)管理組件:ESB企業(yè)服務(wù)總線ESB介紹企業(yè)服務(wù)總線介紹ESB全稱為EnterpriseServiceBus,即企業(yè)服務(wù)總線。它是傳統(tǒng)中間件技術(shù)和XML、Web服務(wù)等技術(shù)結(jié)合產(chǎn)物。ESB提供了網(wǎng)絡(luò)中最基礎(chǔ)連接中樞,是構(gòu)筑企業(yè)神經(jīng)系統(tǒng)必需元素。ESB出現(xiàn)改變了傳統(tǒng)軟件架構(gòu),能夠提供比傳統(tǒng)中間件產(chǎn)品更為廉價處理方案,同時它還能夠消除不一樣應(yīng)用之間技術(shù)差異,讓不一樣應(yīng)用服務(wù)器協(xié)調(diào)運作,實現(xiàn)了不一樣服務(wù)之間通信和整合。從功效上看,ESB提供了事件驅(qū)動和文檔導(dǎo)向處理模式,和分布式運行管理機制,它支持基于內(nèi)容路由和過濾,含有了復(fù)雜數(shù)據(jù)傳輸能力,并能夠提供一系列標準接口[30]。2.企業(yè)服務(wù)總線功效1)總線基礎(chǔ)服務(wù)框架:提供系統(tǒng)一致性、安全性、可靠性,和性能何擴展能力保障基礎(chǔ)技術(shù)手段。2)集成服務(wù):提供基礎(chǔ)集成服務(wù)和用戶定制應(yīng)用服務(wù);支持多個集成服務(wù)模式;支持服務(wù)封裝、重用、服務(wù)組合、服務(wù)調(diào)度。3)公用服務(wù):提供內(nèi)置多種公用服務(wù)。比如,渠道認證服務(wù),日志服務(wù)等公用服務(wù)。4)服務(wù)管理和服務(wù)標準:提供服務(wù)配置管理前臺工具集合,并提供行業(yè)服務(wù)規(guī)約標準。5)系統(tǒng)監(jiān)控:提供多角度系統(tǒng)實時監(jiān)控和交易報表,提供用戶定制告警。6)安全體系:提供多個安全機制并支持和第三方安全系統(tǒng)有效集成,提供有效安全監(jiān)控機制。傳統(tǒng)EAI處理方案
企業(yè)應(yīng)用集成經(jīng)歷了從最初點到點連接到基于消息中間件再到基于SOA和ESB發(fā)展歷程[31]。EAI點對點集成結(jié)構(gòu)存在著嚴重隱患,即伴隨應(yīng)用系統(tǒng)個數(shù)增加。接口數(shù)目將快速增加,其總數(shù)為n(n-1)個接口(n為應(yīng)用系統(tǒng)個數(shù))。應(yīng)用系統(tǒng)之間存在著高度耦合性。這為系統(tǒng)維護帶來巨大復(fù)雜性,任何一個系統(tǒng)升級和改動全部將影響到其它和之相關(guān)應(yīng)用系統(tǒng)修改。伴隨控制技術(shù)和信息技術(shù)發(fā)展,企業(yè)信息化包含到子系統(tǒng)越來越多,點對點集成方法已無法滿足需求。圖4.7點對點EAI技術(shù)
傳統(tǒng)EAI技術(shù)試圖經(jīng)過Hub-Spoke結(jié)構(gòu)處理企業(yè)內(nèi)部整合問題。在SOA架構(gòu)中各服務(wù)之間設(shè)置一個類似Hub中間件,由它充當整個SOA架構(gòu)中央管理器作用。這么,服務(wù)請求者和提供者之間有了一個智能中轉(zhuǎn)站,服務(wù)請求者不再需要了解服務(wù)提供者細節(jié)。圖4.8Hub-Spoke結(jié)構(gòu)EAI技術(shù)
SOA應(yīng)用場景是復(fù)雜企業(yè)級架構(gòu),假如采取Hub模式來構(gòu)建SOA基礎(chǔ)架構(gòu),從純粹邏輯角度,可能會出現(xiàn)以下問題:首先,假如每個服務(wù)請求全部經(jīng)過中央Hub中轉(zhuǎn),那么Hub負擔會很重。速度會伴隨參與者增多而愈來愈慢;其次,這么系統(tǒng)會很脆弱,一旦Hub犯錯,整個SOA架構(gòu)全部會癱瘓;最終,這么架構(gòu)會破壞SOA開放性標準,參與者運行在一個相對封閉環(huán)境中,擴展起來十分麻煩。企業(yè)服務(wù)總線處理方案概念ESB概念是從SOA發(fā)展而來。SOA描述了一個IT基礎(chǔ)設(shè)施應(yīng)用集成模型,其中軟構(gòu)件集是以一個定義清楚層次化結(jié)構(gòu)相互耦合,其中,一個ESB是一個預(yù)先封裝SOA實現(xiàn),它包含了實現(xiàn)SOA分層目標所必需基礎(chǔ)功效部件。ESB是一個是松散耦合服務(wù)和應(yīng)用之間標準集成方法,它能夠作用于[31]:1)面向服務(wù)架構(gòu):分布式應(yīng)用由可重用服務(wù)組成。2)面向消息架構(gòu):應(yīng)用之間經(jīng)過ESB發(fā)送和接收消息。3)事件驅(qū)動架構(gòu):應(yīng)用之間異步產(chǎn)生和接收消息。圖4.9ESB企業(yè)服務(wù)總線
如上圖所表示,ESB比EAI結(jié)構(gòu)靈活多:首先,它比單一Hub形式更開放,總線結(jié)構(gòu)有沒有限擴展可能;其次,真正表現(xiàn)了SOA理念,一切皆為服務(wù),服務(wù)在總線中處于平等地位。即使我們需要部分Hub,那么它們也是以某種服務(wù)形式布署在總線上。所以,ESB可作為SOA架構(gòu)中實現(xiàn)服務(wù)間智能化集成和管理中介。優(yōu)勢ESB是一個完全方面向企業(yè)級中間件處理方案,能夠架構(gòu)在企業(yè)現(xiàn)有網(wǎng)絡(luò)框架、軟硬件系統(tǒng)之上,構(gòu)筑出一個企業(yè)級信息系統(tǒng)處理方案。在ESB中,服務(wù)器如同一個個汽車站,能夠自由地連接和脫離ESB中間件,全部信息系統(tǒng)全部能夠經(jīng)過其發(fā)送或接收任務(wù)、指令,它適適用于全部現(xiàn)有或未來信息應(yīng)用平臺。對企業(yè)而言,采取ESB中間件系統(tǒng)作為企業(yè)級信息系統(tǒng)融合方案中中樞技術(shù),幾乎能夠無須添加任何軟硬件設(shè)備,就可把過去、現(xiàn)有和未來IT系統(tǒng)整合在企業(yè)級信息應(yīng)用框架下,而且能為企業(yè)提供實時、大容量信息通信和實時控制、管理和分配消息傳輸能力。它能大大提升整個網(wǎng)絡(luò)和信息系統(tǒng)使用效率,還能為企業(yè)節(jié)省可觀整合費用。ESB在SOA系統(tǒng)中實施階段
盡管ESB作為SOA架構(gòu)系統(tǒng)中關(guān)鍵組件,不過并不是作為基礎(chǔ)組件,在開始階段就去開發(fā)。
Accenture首席技術(shù)官DonRippert認為激活SOA全部潛力需要經(jīng)過四個階段,而ESB則處于第三個階段。她同時指出目前大多數(shù)企業(yè)還只是處于第一個階段,所以ESB實際上對于她們來說并不是迫切需要[32]。而她所說四個階段以下所表示:1)使用XML,以更標準方法使用應(yīng)用程序接口。2)捕捉部分業(yè)務(wù)過程,并將它們轉(zhuǎn)化成為Web服務(wù)。3)引入并全方面使用企業(yè)服務(wù)總線。4)產(chǎn)生業(yè)務(wù)過程實施語言(BusinessProcessExecutionLanguage,BPEL),它可由業(yè)務(wù)過程建模工具完成。BPEL能夠改變應(yīng)用程序行為,而無需修改軟件。另外,在IBM定義實施SOA五個切入點中——人員、步驟、信息、連接性、重用,只有連接性和ESB相關(guān)。Bobby在她文章中也說道,僅僅建造一個總線工程是不可取。IT部門認為只要建造了一個總線,大家就會圍繞著總線來結(jié)構(gòu)SOA應(yīng)用了。不過問題在于,當大家開始結(jié)構(gòu)SOA應(yīng)用時,她們會發(fā)覺那些已經(jīng)建造好ESB已經(jīng)不能滿足目前需求了。ERP系統(tǒng)架構(gòu)技術(shù)時間線經(jīng)過ERP系統(tǒng)架構(gòu)演變發(fā)展資料分析,特意繪制了架構(gòu)技術(shù)時間線,以下圖所表示:圖4.10架構(gòu)技術(shù)演化時間線基于SOA架構(gòu)ERP系統(tǒng)是分解掉傳統(tǒng)ERP緊耦合特征,將ERP系統(tǒng)內(nèi)部功效以服務(wù)方法展現(xiàn)出來,經(jīng)過API調(diào)用方法和其它系統(tǒng)交互;借助互聯(lián)網(wǎng)B/S架構(gòu)優(yōu)異性,能夠在線隨時訪問ERP系統(tǒng),免安裝和布署,為企業(yè)能夠節(jié)省IT運行成本,提升ERP系統(tǒng)在企業(yè)內(nèi)部關(guān)鍵性。
系統(tǒng)實現(xiàn)關(guān)鍵技術(shù)關(guān)鍵技術(shù)框架及工具三層分布式架構(gòu)三層架構(gòu)介紹三層架構(gòu)是[23]:
1)界面層
界面層提供給用戶一個視覺上界面,經(jīng)過界面層,用戶輸入數(shù)據(jù)、獲取數(shù)據(jù)。界面層同時也提供一定安全性,確保用戶不用看到無須要機密信息。
2)邏輯層
邏輯層是界面層和數(shù)據(jù)層橋梁,它響應(yīng)界面層用戶請求,實施任務(wù)并從數(shù)據(jù)層抓取數(shù)據(jù),并將必需數(shù)據(jù)傳送給界面層。
3)數(shù)據(jù)層
數(shù)據(jù)層定義、維護數(shù)據(jù)完整性、安全性,它響應(yīng)邏輯層請求,訪問數(shù)據(jù)。這一層通常由大型數(shù)據(jù)庫服務(wù)器實現(xiàn),如Oracle、Sybase、MSSQlServer等。
從開發(fā)角度和應(yīng)用角度來看,三層架構(gòu)比雙層或單層結(jié)構(gòu)全部有更大優(yōu)勢。三層結(jié)構(gòu)適合群體開發(fā),每人能夠有不一樣分工,協(xié)同工作使效率倍增。開發(fā)雙層或單層應(yīng)用時,每個開發(fā)人員全部應(yīng)對系統(tǒng)有較深了解,能力要求很高,開發(fā)三層應(yīng)用時,則能夠結(jié)合多方面人才,只需少數(shù)人對系統(tǒng)全方面了解,從一定程度工降低了開發(fā)難度。
三層架構(gòu)屬于瘦用戶模式,用戶端只需一個較小硬盤、較小內(nèi)存、較慢CPU就能夠取得不錯性能。相比之下,單層或胖用戶對面器要求太高。
三層架構(gòu)另一個優(yōu)點在于能夠愈加好支持分布式計算環(huán)境。邏輯層應(yīng)用程序能夠有多個機器上運行,充足利用網(wǎng)絡(luò)計算功效。分布式計算潛力巨大,遠比升級CPU有效。
三層架構(gòu)最大優(yōu)點是它安全性。用戶端只能經(jīng)過邏輯層來訪問數(shù)據(jù)層,降低了入口點,把很多危險系統(tǒng)功效全部屏蔽了。
另外三層架構(gòu)還能夠支持以下功效:
1)RemoteAccess(遠程訪問資料),比如可透過Internet存取遠程數(shù)據(jù)庫;
2)HighPerformance(提升運算效率)處理集中式運算(Centralize)及主從式架構(gòu)(Client-Server)中,數(shù)據(jù)庫主機運算負擔,降低數(shù)據(jù)庫主機ConnectionLoad,并可藉由增加AppServer處理眾多數(shù)據(jù)處理要求;
3)Client端發(fā)出Request(工作要求)后,便可離線,交由AppServer和DataBaseServer共同把工作完成,降低Client端等候時間。
分布式系統(tǒng)是充足利用服務(wù)器資源,性能優(yōu)勢將系統(tǒng)表現(xiàn)層、邏輯層和數(shù)據(jù)層布署到不一樣服務(wù)器上,這么做好處是獲取系統(tǒng)可靠性和健壯性。一個經(jīng)典三層分布式系統(tǒng)架構(gòu)以下圖所表示:圖5.1經(jīng)典三層分布式系統(tǒng)架構(gòu)分布式系統(tǒng)介紹
分布式系統(tǒng)有以下特點[24]:
1)
協(xié)作和互聯(lián)分布式系統(tǒng)關(guān)鍵作用之一就是能夠整合大量地理上分散于各地信息和服務(wù),如地圖、電子商務(wù)網(wǎng)站、多媒體、大百科全書等?;ヂ?lián)網(wǎng)上即時通訊系統(tǒng)和聊天室流行凸顯了分布式系統(tǒng)另一個關(guān)鍵作用:和家庭、好友、同事乃至用戶保持聯(lián)絡(luò)。
2)經(jīng)濟性包含PDA、筆記本、臺式機和服務(wù)器在內(nèi)計算機網(wǎng)絡(luò)通常比集中式大型機含有更高性價比。比如,它們支持非集中式、模塊化應(yīng)用,這使得共享像大容量文件服務(wù)器、高清楚度打印機等昂貴外設(shè)成為可能。對應(yīng)地,我們能夠?qū)⑦x定應(yīng)用組件和服務(wù)分配到含有特殊處理屬性計算機節(jié)點上實施,如含有高性能磁盤控制器、大容量內(nèi)存或增強浮點運算能力節(jié)點,而那些簡易程序就能夠運行在相對廉價硬件上。
3)性能和可伸縮性成功軟件通常會伴隨時間推移而擁有更多用戶和需求,所以分布式系統(tǒng)性能能否擴展以處理不停增加負荷至關(guān)關(guān)鍵。能夠?qū)⒁崖?lián)網(wǎng)計算節(jié)點處理能力組合起來以取得性能極大提升,另外,最少理論上來說,多處理器和網(wǎng)絡(luò)更輕易擴展。比如,多個計算和通信處理任務(wù)能夠并行運行在數(shù)據(jù)中心不一樣節(jié)點上,或運行在同一服務(wù)器不一樣虛擬機上。
4)容錯性分布式系統(tǒng)關(guān)鍵目標之一是許可系統(tǒng)發(fā)生部分故障。比如,盡管網(wǎng)絡(luò)中全部節(jié)點全部運轉(zhuǎn)正常,但網(wǎng)絡(luò)本身可能會出現(xiàn)故障。類似地,網(wǎng)絡(luò)中某個終端系統(tǒng),或多處理器系統(tǒng)中某個中央處理器可能瓦解。這些故障應(yīng)該能被很好地處理而不影響其它不相關(guān)部分或整個系統(tǒng)。一個常見容錯實現(xiàn)方法是在多個節(jié)點或網(wǎng)絡(luò)上提供反復(fù)服務(wù)。冗余性有利于將單節(jié)點失敗影響控制在最小范圍內(nèi),它能夠顯著提升系統(tǒng)在出現(xiàn)部分故障時可靠性。
5)內(nèi)在分布性一些應(yīng)用天生就是分布式,如電信管理網(wǎng)絡(luò)(TMN)系統(tǒng)、跨區(qū)域部門企業(yè)級業(yè)務(wù)系統(tǒng)、對等網(wǎng)絡(luò)(P2P)內(nèi)容共享系統(tǒng)、企業(yè)之間(B2B)供給鏈管理系統(tǒng)等。分布式在這些系統(tǒng)中已經(jīng)不再是一個可選項,而是滿足用戶需求至關(guān)關(guān)鍵部分。基于WEBB/S架構(gòu)開發(fā)技術(shù)
完全采取100%WEB,也就是B/S架構(gòu)應(yīng)用軟件才能以云計算模式給用戶提供服務(wù)。因為因為這種模式才能做到跨平臺,兼容多種設(shè)備;其架構(gòu)應(yīng)該是基于互聯(lián)網(wǎng)架構(gòu),關(guān)鍵業(yè)務(wù)邏輯是在后臺服務(wù)器上布署實現(xiàn),用戶端一直完成數(shù)據(jù)展現(xiàn)和交互操作。早期那些基于單機、局域網(wǎng)C/S結(jié)構(gòu)軟件是無法支持云計算,即使有一些軟件企業(yè)為了急于搭上云計算這趟車,試圖利用SOA、虛擬化等技術(shù)將20甚至30年前C/S軟件改造成為支持云計算模式,實踐證實這是徒勞。也是對用戶不負責。這絕對不是云計算,實際上是一個Multi-Tenant模式,這種模式無法處理高性能、個性化、跨平臺等關(guān)鍵問題[2]。統(tǒng)一認證技術(shù)SSO介紹
SSO英文全稱SingleSignOn,單點登錄。SSO是在多個應(yīng)用系統(tǒng)中,用戶只需要登錄一次就能夠訪問全部相互信任應(yīng)用系統(tǒng)。它包含能夠?qū)⑦@次關(guān)鍵登錄映射到其它應(yīng)用中用于同一個用戶登錄機制。它是現(xiàn)在比較流行企業(yè)業(yè)務(wù)整合處理方案之一[34]。SSO技術(shù)實現(xiàn)機制
當用戶第一次訪問應(yīng)用系統(tǒng)1時候,因為還沒有登錄,會被引導(dǎo)到認證系統(tǒng)中進行登錄;依據(jù)用戶提供登錄信息,認證系統(tǒng)進行身份校驗,假如經(jīng)過校驗,應(yīng)該返回給用戶一個認證憑據(jù)--ticket;用戶再訪問別應(yīng)用時候就會將這個ticket帶上,作為自己認證憑據(jù),應(yīng)用系統(tǒng)接收到請求以后會把ticket送到認證系統(tǒng)進行校驗,檢驗ticket正當性。假如經(jīng)過校驗,用戶就能夠在不用再次登錄情況下訪問應(yīng)用系統(tǒng)2和應(yīng)用系統(tǒng)3了[34]。要實現(xiàn)SSO,需要以下關(guān)鍵功效:
1)全部應(yīng)用系統(tǒng)共享一個身份認證系統(tǒng)統(tǒng)一認證系統(tǒng)是SSO前提之一。認證系統(tǒng)關(guān)鍵功效是將用戶登錄信息和用戶信息庫相比較,對用戶進行登錄認證;認證成功后,認證系統(tǒng)應(yīng)該生成統(tǒng)一認證標志(ticket),返還給用戶。另外,認證系統(tǒng)還應(yīng)該對ticket進行校驗,判定其有效性。
2)全部應(yīng)用系統(tǒng)能夠識別和提取ticket信息要實現(xiàn)SSO功效,讓用戶只登錄一次,就必需讓應(yīng)用系統(tǒng)能夠識別已經(jīng)登錄過用戶。應(yīng)用系統(tǒng)應(yīng)該能對ticket進行識別和提取,經(jīng)過和認證系統(tǒng)通訊,能自動判定目前用戶是否登錄過,從而完成單點登錄功效。另外:1)單一用戶信息數(shù)據(jù)庫并不是必需,有很多系統(tǒng)不能將全部用戶信息全部集中存放,應(yīng)該許可用戶信息放置在不一樣存放中,實際上,只要統(tǒng)一認證系統(tǒng),統(tǒng)一ticket產(chǎn)生和校驗,不管用戶信息存放在什么地方,全部能實現(xiàn)單點登錄。2)統(tǒng)一認證系統(tǒng)并不是說只有單個認證服務(wù)器認證服務(wù)器之間要經(jīng)過標準通訊協(xié)議,相互交換認證信息,就能完成更高等級單點登錄。如:當用戶在訪問應(yīng)用系統(tǒng)1時,由第一個認證服務(wù)器進行認證后,得到由此服務(wù)器產(chǎn)生ticket。當她訪問應(yīng)用系統(tǒng)2時候,認證服務(wù)器2能夠識別此ticket是由第一個服務(wù)器產(chǎn)生,經(jīng)過認證服務(wù)器之間標準通訊協(xié)議(比如SAML)來交換認證信息,仍然能夠完成SSO功效。圖5.2SSO系統(tǒng)架構(gòu)示意圖WEB-SSO實現(xiàn)用戶在訪問頁面1時候進行了登錄,不過用戶端每個請求全部是單獨連接,當用戶再次訪問頁面2時候,怎樣才能告訴Web服務(wù)器,用戶剛才已經(jīng)登錄過了呢?瀏覽器和服務(wù)器之間有約定:經(jīng)過使用cookie技術(shù)來維護應(yīng)用狀態(tài)。Cookie是能夠被Web服務(wù)器設(shè)置字符串,而且能夠保留在瀏覽器中。當瀏覽器訪問了頁面1時,web服務(wù)器設(shè)置了一個cookie,并將這個cookie和頁面1一起返回給瀏覽器,瀏覽器接到cookie以后,就會保留起來,在它訪問頁面2時候會把這個cookie也帶上,Web服務(wù)器接到請求時也能讀出cookie值,依據(jù)cookie值內(nèi)容就能夠判定和恢復(fù)部分用戶信息狀態(tài)。Web-SSO完全能夠利用Cookie技術(shù)來完成用戶登錄信息保留,將瀏覽器中Cookie和上文中Ticket結(jié)合起來,完成SSO功效。為了完成一個簡單SSO功效,需要兩個部分合作:1)統(tǒng)一身份認證服務(wù)。2)修改Web應(yīng)用,使得每個應(yīng)用全部經(jīng)過這個統(tǒng)一認證服務(wù)來進行身份校驗。構(gòu)件開發(fā)技術(shù)早在,GartnerGroup①就估計到最少70%新應(yīng)用將關(guān)鍵建立在軟件構(gòu)件之上。伴隨WebServices等技術(shù)發(fā)展,將會深入地推進構(gòu)件技術(shù)發(fā)展,而基于構(gòu)件軟件開發(fā)方法也成為軟件開發(fā)主流技術(shù)[15]。什么是軟件構(gòu)件?工業(yè)化革命偉大創(chuàng)新在于,功效再復(fù)雜產(chǎn)品也能夠由大量標準零部件組裝而成,分工越細、專業(yè)生產(chǎn)程度越高,總體生產(chǎn)效率就越高。構(gòu)件技術(shù)就是一個類似于“零部件組裝”集成組裝式軟件生產(chǎn)方法,它把零件、生產(chǎn)線和裝配運行概念利用在軟件產(chǎn)業(yè)中,根本打破了手工作坊式軟件開發(fā)模式。構(gòu)件是軟件組成元素,含有一定功效和結(jié)構(gòu),并符合一定標準,能夠完成一個或多個特定服務(wù)。構(gòu)件隱藏了具體實現(xiàn),經(jīng)過接口對外提供服務(wù)。通常而言,構(gòu)件是軟件系統(tǒng)中含有相對獨立功效、能夠明確辨識、接口由契約指定、和語境有顯著依靠關(guān)系、可獨立布署、可組裝軟件實體。廣義上講,構(gòu)件能夠是數(shù)據(jù),也能夠是被封裝對象類、軟件構(gòu)架、文檔、測試用例等。軟件生產(chǎn)方法變革構(gòu)件技術(shù)出現(xiàn)是對傳統(tǒng)軟件開發(fā)過程一次變革。構(gòu)筑在“構(gòu)件組裝”模式之上構(gòu)件技術(shù),使軟件技術(shù)人員擺脫了“一行行寫代碼”低效編程方法,直接進入“集成組裝構(gòu)件”更高階段。圖5.3軟件構(gòu)件開發(fā)技術(shù)基于構(gòu)件軟件開發(fā),不僅使軟件產(chǎn)品在用戶需求吻合度、上市時間、軟件質(zhì)量上領(lǐng)先于同類產(chǎn)品,提升了項目標成功率,而且對軟件開發(fā)和維護變得簡單易行,用戶能夠隨時隨地應(yīng)應(yīng)對商業(yè)環(huán)境改變和IT技術(shù)改變,實現(xiàn)“靈敏定制”。從最終用戶角度來看,采取基于構(gòu)件技術(shù)開發(fā)系統(tǒng),在碰到業(yè)務(wù)步驟改變或系統(tǒng)升級等問題時,不再需要對系統(tǒng)進行大規(guī)模改造或推倒重來,只要經(jīng)過增加新構(gòu)件或改造原來構(gòu)件來實現(xiàn)。據(jù)已采取構(gòu)件技術(shù)進行軟件開發(fā)中國某著名軟件企業(yè)相關(guān)統(tǒng)計顯示,構(gòu)件技術(shù)能夠使軟件投放市場時間降低為原來1/2到1/5,使軟件缺點密度降低為原來1/5到1/10,使軟件維護成本降低為原來1/5到1/10,使整體軟件開發(fā)成本降低大約15%,長久項目可降低高達75%成本。構(gòu)件化開發(fā)基礎(chǔ)概念構(gòu)件化,是指軟件體系結(jié)構(gòu)可重組和軟件組件可重用系統(tǒng)開發(fā)方法。這種方法基礎(chǔ)內(nèi)涵是:應(yīng)用需求領(lǐng)域化,軟件結(jié)構(gòu)框架化,軟件元素構(gòu)件化,應(yīng)用原型實例化。構(gòu)件,是含有一定功效和結(jié)構(gòu),并符合一定標準,能夠完成一個或多個特定服務(wù)軟件實體,可獨立布署也能夠組裝。采取構(gòu)件技術(shù)軟件生產(chǎn)方法就是一個類似于“零部件組裝”集成組裝式軟件生產(chǎn)方法,它把零件、生產(chǎn)線和裝配運行概念利用在軟件產(chǎn)業(yè)中,打破了手工作坊式軟件開發(fā)模式,實現(xiàn)“搭積木”組建方法[14]。圖5.4積木式搭建軟件系統(tǒng)基于構(gòu)件軟件開發(fā)方法有以下幾方面優(yōu)勢:
1)提升復(fù)用性:
即全方面考慮構(gòu)件在多個應(yīng)用系統(tǒng)中復(fù)用潛力;
2)提升可定制性和適應(yīng)性:
即能夠讓使用者按需配置構(gòu)件;
3)提升可維護性:
即在系統(tǒng)中能夠方便地添加、刪除和修改構(gòu)件。
基于構(gòu)件開發(fā)方法和面向?qū)ο箝_發(fā)方法相類似,它們?nèi)坎扇∽皂斚蛳潞妥缘紫蛏舷嘟Y(jié)合方法,以后者支持類重用,但前者
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣告行業(yè)美工工作技能總結(jié)
- 酒店服務(wù)員工作總結(jié)
- 跨學科教學與合作學習方案計劃
- 行業(yè)新品介紹總結(jié)
- 化工行業(yè)原料使用技術(shù)培訓總結(jié)
- 娛樂行業(yè)演藝表演培訓總結(jié)
- 體育館服務(wù)員的工作總結(jié)
- 酒店行業(yè)的衛(wèi)生管理
- 《漁藥使用及安全》課件
- 2022年內(nèi)蒙古自治區(qū)烏海市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 二氧化碳可降解塑料生產(chǎn)項目建議書
- 化工裝置常用英語詞匯對照
- 幼兒園幼兒教育數(shù)學領(lǐng)域核心經(jīng)驗
- 病例討論麻醉科PPT課件
- EBZ220A掘進機幻燈片
- 集體跳繩賽規(guī)則
- 煤礦調(diào)度工作培訓內(nèi)容
- 機械原理課程設(shè)計-旋轉(zhuǎn)型灌裝機運動方案設(shè)計
- 標準《大跨徑混凝土橋梁的試驗方法》
- 1、食品安全與營養(yǎng)健康自查制度(學校食堂)
- 四氯化硅的提純
評論
0/150
提交評論