面向服務(wù)的架構(gòu)_第1頁
面向服務(wù)的架構(gòu)_第2頁
面向服務(wù)的架構(gòu)_第3頁
面向服務(wù)的架構(gòu)_第4頁
面向服務(wù)的架構(gòu)_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

編號:時間:2021年x月x日書山有路勤為徑,學(xué)海無涯苦作舟頁碼:第頁(一)基礎(chǔ):什么是BPM商業(yè)流程管理?CNET中國·PC

類型:轉(zhuǎn)載

作者:csdn

責(zé)編:小蝎

時間:2006-10-23

BPM是流程自動化的應(yīng)用,幫助企業(yè)進行業(yè)務(wù)流程的分析之外,另可利用IT技術(shù),自動化組織內(nèi)各部門的原本以人力及公文傳遞的流程。

根據(jù)數(shù)據(jù)整合軟件供貨商Ultimus的定義,BPM主要精神在于管理企業(yè)的流程。除工作流程自動化系統(tǒng)之外,還必需提供企業(yè)應(yīng)用軟件整合(EAI)與交換的功能、流程成本效率評量與績效管理,以及流程初始設(shè)計的模型最佳化工具,用以涵蓋企業(yè)管理流程中所有的必要環(huán)節(jié)。

分析師建議,決定BPM工具之前,企業(yè)必須用嚴(yán)謹?shù)膽B(tài)度檢討目前使用的軟件,決定業(yè)務(wù)角色的授權(quán),權(quán)衡數(shù)據(jù)模型(datamodel)與分析工具(analyticalapplications),并建立未來采用BPM后的假想情境。

目前包括IBM、微軟、BEA也努力催生商業(yè)模型標(biāo)準(zhǔn),聯(lián)合起草網(wǎng)絡(luò)服務(wù)(WebServices)商業(yè)流程執(zhí)行語言(BPEL4WS)。業(yè)界相信,先建立商業(yè)流程模型,再從這些流程模型中建立應(yīng)用程序進而監(jiān)視這些模型,將有助在企業(yè)內(nèi)部的IT部門與業(yè)務(wù)主管之間建立起環(huán)環(huán)相扣的自動化流程(二)體系架構(gòu)藍圖SOA和BPM的合并CNET中國·PC

類型:投稿

作者:BEA

責(zé)編:小蝎

時間:2006-10-23

面向服務(wù)的體系架構(gòu)(Service-orientedarchitecture,SOA)已經(jīng)成為軟件工程中一個最重要的主題。無疑,隨著Web服務(wù)的推廣和廣泛接受,以及支持基于SOA解決方案開發(fā)的case風(fēng)格的IDE這一新浪潮的興起,SOA已經(jīng)成為構(gòu)建企業(yè)級分布式應(yīng)用程序的首選藍圖。與此同時,業(yè)務(wù)流程管理(businessprocessmanagement,BPM)作為操作靈活的新企業(yè)并為其建模的主要支持者,正在強力反彈。

面向服務(wù)的體系架構(gòu)(Service-orientedarchitecture,SOA)已經(jīng)成為軟件工程中一個最重要的主題。無疑,隨著Web服務(wù)的推廣和廣泛接受,以及支持基于SOA解決方案開發(fā)的case風(fēng)格的IDE這一新浪潮的興起,SOA已經(jīng)成為構(gòu)建企業(yè)級分布式應(yīng)用程序的首選藍圖。與此同時,業(yè)務(wù)流程管理(businessprocessmanagement,BPM)作為操作靈活的新企業(yè)并為其建模的主要支持者,正在強力反彈?;A(chǔ)結(jié)構(gòu)廠商已經(jīng)使BPM成為他們出售的系列產(chǎn)品的主要組件,瞄準(zhǔn)機會的廠商使用專用的BPM系統(tǒng)提供垂直的業(yè)務(wù)解決方案,純使用BPM的廠商正在得到更加廣泛的接受。

盡管兩種趨勢均顯露出了征兆,它們的趨同現(xiàn)象仍不明顯,而且關(guān)于這種現(xiàn)象沒有統(tǒng)一的看法。它們是互補的表示法嗎?它們會重疊嗎?我該如何一起使用它們?這樣做有沒有另外的優(yōu)點?此外,為什么80年代末期的企業(yè)流程重構(gòu)(BPreengineering)失敗了,而第三次BPM浪潮卻將要取得成功呢?

在這一系列三篇文章中,我將解決這些問題。首先,我將討論一個體系架構(gòu)藍圖的最佳實踐如何將面向服務(wù)體系架構(gòu)與BPM框架合并,從而為構(gòu)建健壯的企業(yè)級集成解決方案并對其建模提供可重復(fù)的方案。我描述了為什么在當(dāng)今,任何使用技術(shù)支持其任務(wù)陳述需要的企業(yè)比以往更能擁有合適的體系架構(gòu)藍圖。最后,我討論了什么是實時交易的挑戰(zhàn),以及BPM方法如何能夠?qū)崿F(xiàn)企業(yè)靈活性、智能企業(yè)建模、系統(tǒng)開發(fā)和以客戶為中心的運作優(yōu)點。

在第二篇文章中,我將應(yīng)用BPM技術(shù)來為一個支持“用于汽車保險”業(yè)務(wù)場景的軟件解決方案建模和設(shè)計體系架構(gòu)。我將講述兩種設(shè)計:一種純BPM設(shè)計和一種混合型設(shè)計。我還將講述一些新興的建模工具和標(biāo)準(zhǔn),并討論一些建模和各種體系架構(gòu)選擇和策略方面的難題。

在第三篇(也是最后一篇)文章中,我將使用BEA的WebLogicPlatform8.1構(gòu)建一個POC。我將討論BEA的IDE新引入的可視化編程范型及其優(yōu)缺點,和構(gòu)建完全分布式的企業(yè)級應(yīng)用程序所需的一些技術(shù)。我還將解釋,為什么流行的請求/響應(yīng)模式的WEB協(xié)議與基于事件的流程建模,以及它在進行架構(gòu)決策時的意義不一致的原因。體系架構(gòu)模式——誰需要它們?

軟件工程是藝術(shù)還是科學(xué)?在科學(xué)中,我們有明確的定義、定理和證據(jù)。在藝術(shù)中,我們有工具和技術(shù)、趨勢以及最佳實踐??茖W(xué)中提出了一些假設(shè),其中一些變成定理,另外一些在經(jīng)過數(shù)個世紀(jì)的研究之后得到驗證,還有一些永遠沒有答案。在藝術(shù)中,新技術(shù)帶來新的趨勢,比如新聞和數(shù)字攝影。如果軟件工程是一門科學(xué),定義我們在日常業(yè)務(wù)語言中使用的所有術(shù)語不應(yīng)該是一件困難的事情,像服務(wù)、Web服務(wù)、面向服務(wù)的體系架構(gòu)、BPM和BPM系統(tǒng)(BPMS)。的確,我可以利用數(shù)學(xué)精度來證明一個數(shù)據(jù)庫查詢算法的正確性。但是,我能夠以一種干脆、簡潔且通常會被接受的方式來回答,J2EE中的B2B集成是與純.NETWeb服務(wù)解決方案相對的正確答案嗎?據(jù)我了解,對于我們中間的一些人來說,這不是問題。最后,任一種常見的貿(mào)易出版物的隨機調(diào)查指出,每個人都可以給出自己的定義,而有些人甚至質(zhì)疑IT存在的本質(zhì)。我不得不得出結(jié)論,軟件工程仍然是藝術(shù)多于科學(xué)。這正好是我們需要合適的最佳實踐、框架和可重復(fù)過程的原因。

模式封裝了最佳實踐,簡練地定義了域問題,描述了使問題值得關(guān)注的原因,并提出了解決方案。模式并沒有解決獨特的問題。專業(yè)人員結(jié)合各種模式來解決更為復(fù)雜而且有時更為獨特的問題。ChristopherAlexander說:“模式同時也是發(fā)生在世界上的事件和告訴我們?nèi)绾蝿?chuàng)建該事件的規(guī)則,以及我們必須創(chuàng)建它的時刻。它既是過程,也是事件。”我回想起我一直以來最喜歡的定義:對象是帶有狀態(tài)或數(shù)據(jù)及行為的數(shù)據(jù)結(jié)構(gòu)。就目前來說,可以把Web服務(wù)看作帶有一個方法的對象。就像BEAWebLogicPlatform8.1所實現(xiàn)的那樣,會話式Web服務(wù)看起來更像是真正的對象:對它進行一次初始化,然后一直執(zhí)行方法。萬一您仍然不能肯定Web服務(wù)是粗粒度的對象,考慮:(1)IBM、BEA和Microsoft宣布了WS-Eventing規(guī)范。它就像是優(yōu)秀但老式的對象觀察者模式。(2)開放式網(wǎng)格服務(wù)體系架構(gòu)(OpenGridServicesArchitecture)實現(xiàn)了網(wǎng)格服務(wù)協(xié)議的Web服務(wù)接口繼承。因此,Web服務(wù)提供數(shù)據(jù)和行為(Alexander的定義中的事件和規(guī)則),而BPMS實現(xiàn)模式的流程組件。SOA是一個用于解決企業(yè)集成和系統(tǒng)開發(fā)問題的體系架構(gòu)模式。

我們已經(jīng)看到,SOA不是體系架構(gòu)趨勢的革命,而是它經(jīng)過一段時間發(fā)展的演變成果。它圍繞為企業(yè)構(gòu)建分布式系統(tǒng)而發(fā)展。誠然,Web服務(wù)以一種普遍接受且無二義性的方式提供底層技術(shù),以解決系統(tǒng)連接性問題。也許是頭一次,Web服務(wù)成功地解決了互操作性的問題,而這是CORBA、COM、DCOM和RPC做夢也從未想過的事情。我肯定,作為中立語言,XML對此也準(zhǔn)備一展身手。然而,SOA中包括進來的BPMS框架是一個新的、革命性的元素。HowardSmith和PeterFingar描述的第三次浪潮是指一組全新的概念、框架和主流產(chǎn)品。它正在顯著改變企業(yè)轉(zhuǎn)化的方式,從而靈活地管理和運行全局的和協(xié)作的電子商務(wù)實體。

業(yè)務(wù)流程管理的出現(xiàn)已經(jīng)有一段時間,它更多地用于工業(yè)中,而與IT無關(guān)。并發(fā)工程和六西格瑪被開發(fā)用來解決生產(chǎn)和流程改進中的及時協(xié)作問題,并且確實取得了相當(dāng)?shù)某晒ΑH欢?,?0年代晚期,出于多方面的原因,業(yè)務(wù)流程重構(gòu)管理獲得的成功非常有限。但是最根本的原因是,重構(gòu)是紙上談兵。沒有軟件來支持這樣一個復(fù)雜的任務(wù)。BPM在沒有考慮IT系統(tǒng)的情況下設(shè)計了自適應(yīng)的企業(yè)。正如DavidTaylor所寫:

“對連續(xù)性流程優(yōu)化的需要要求從根本上重新考慮如何設(shè)計和構(gòu)建信息系統(tǒng)。提出解決固定問題的固定解決方案已經(jīng)不再夠用?!?/p>

信息系統(tǒng),像它們支持的業(yè)務(wù)模型一樣,必須在本質(zhì)上就是自適應(yīng)的。

Taylor提出一種基于OO的開發(fā)技術(shù),作為開發(fā)自適應(yīng)IT的一種方法,這種技術(shù)稱為聚合工程(convergentengineering)。然而,OOP無法成功解決分布式計算和企業(yè)集成的問題。另外,負責(zé)對企業(yè)建模的業(yè)務(wù)分析人員也沒有采用OO。

BPMS將流程建立為用于建模、軟件設(shè)計和運行時執(zhí)行的統(tǒng)一結(jié)構(gòu)。過去,開發(fā)趨勢一直在影響我們對企業(yè)建模的方式。功能式編程使功能需求技術(shù)流行起來。關(guān)系數(shù)據(jù)庫帶來了RDBS分析和設(shè)計的流行。面向?qū)ο蟮木幊虅t為OO分析和用例開發(fā)鋪平了道路。但是在大多數(shù)情況下,業(yè)務(wù)分析人員不會使用開發(fā)專門術(shù)語,因此產(chǎn)生了對需求可跟蹤性中通常影響的另一種翻譯的需要。

BPM規(guī)范正在快速演變?yōu)闃?biāo)準(zhǔn)。市場中已經(jīng)出現(xiàn)了支持業(yè)務(wù)建模、優(yōu)化和運行時執(zhí)行的產(chǎn)品。正如BEA的WebLogicPlatform8.1和其他BPMS產(chǎn)品所實現(xiàn)的那樣,以流程為中心的BPMS方法用于系統(tǒng)開發(fā)生命周期,它消除了對運行時阻抗不匹配的業(yè)務(wù)需求。

靈活的企業(yè)擁有自適應(yīng)的業(yè)務(wù)和自適應(yīng)的IT系統(tǒng)。如果構(gòu)建企業(yè)解決方案的過程中出現(xiàn)一個新的問題,那么它一定是需求變化的速度。它的速度之快是前所未有的。BPMS引擎添加了一個新的層到傳統(tǒng)的開發(fā)堆棧(參見圖1)中,并引入服務(wù)質(zhì)量來解決企業(yè)集成中的根本問題。BPMS引擎使編程最易變的部分——集成點——的軟布線變得容易。軟布線是以正式語言顯式描述的,并由BPMS引擎(又名有限狀態(tài)機引擎)執(zhí)行。正如BEAWebLogicIntegrator和其他BPMS產(chǎn)品所實現(xiàn)的那樣,業(yè)務(wù)與IT資源可以同時在一個可視化的只能IDE中查看和修改流程。只需輕擊鼠標(biāo),便可部署到運行時BPMS執(zhí)行引擎。業(yè)務(wù)模擬可以運行,而性能工程可以在系統(tǒng)完成之前完成;這種方式聽起來就像CASE工具。SOA和BPMS工具將靈活企業(yè)的實時執(zhí)行儀表板帶向主流。

(圖01)

在本文余下的部分中,我將描述一個典型的金融服務(wù)企業(yè)的開發(fā),并提出一條通向基于BPMS的SOA的遷移路徑。該路徑是增量的,但是它需要戰(zhàn)略思考和對未來遠景的承諾。作為回報,它將允許投資的早期回報,并將遺留企業(yè)轉(zhuǎn)化為完全自適應(yīng)的靈活企業(yè)。

從企業(yè)遠景到組織筒倉(Silo)

企業(yè)從遠景開始。CEO和董事會采用遠景和行業(yè)使命陳述。C級管理人員定義策略,并適當(dāng)?shù)匕才帕鞒虂砉芾韴?zhí)行(參見圖1)。定義功能角色和責(zé)任,然后創(chuàng)建企業(yè)界線。業(yè)務(wù)分類(Lineofbusiness,LOB)在本質(zhì)上可以是水平或垂直的(參見圖2)。垂直LOB具有以下特征:

獨立的操作域。

特有的管理和策略。

開發(fā)和維護自己的IT—自動化孤島。

足夠大以至于可以創(chuàng)建多種業(yè)務(wù)分類;例如,抵押貸款證券、市政公債、貨幣市場,等等。(圖02)水平LOB具有不同的特征集合:

提供業(yè)務(wù)控制。

管理的支配和一致。

需要訪問由垂直LOB管理的數(shù)據(jù)。

合適的手動流程和書面報告。

在第二個信息紀(jì)元(不要與第二次浪潮混淆)中,我們使用了各種編程技術(shù)來鏈接自動化孤島,從FTP、數(shù)據(jù)庫復(fù)制、EAI和消息收發(fā)開始。此方法產(chǎn)生了一整套新問題:·

接口的多重性:一份MorganStanleyDeanWitter報告表明,通常的金融服務(wù)客戶需要維護6000個接口,為此每年花費2500萬美元,而且每年還需構(gòu)建900個新的點到點接口,為此需另外花費2500萬美元進行構(gòu)建,并且還要花費400萬美元進行維護?!ふ{(diào)停流程:必須在每一個倉庫上實現(xiàn),需要消耗有價值的時間和昂貴的資源。這是一項常用技術(shù),用于檢驗由多個實體修改的引用數(shù)據(jù)。·

流程:在中間件中進行硬布線。在分析過程中捕捉流程所花費的時間和金錢屬于浪費。企業(yè)最重要的資產(chǎn)——流程——隱藏在n(n-1)個意大利面式接口的迷宮中?!?/p>

開發(fā)新的水平流程:需要多個LOB的協(xié)調(diào)?!?/p>

實現(xiàn)特定和專用的接口:需要專門化和一次性編程。重用消失,維護方面的投入顯著增加。·

異常難于跟蹤:錯誤解析通常需要訪問多個系統(tǒng)。人工干預(yù)和解釋是不可避免的。找尋答案需要花費大量寶貴時間,并對客戶滿意程度和收益性方面的大致情況有著直接影響。流程無處不在。您能發(fā)現(xiàn)它們嗎?

對于企業(yè)來說,流程可以是客戶層面上的,也可以是內(nèi)部的,或者可以是更大流程的組成部分。我們在同樣的企業(yè)中可以找到內(nèi)部流程。流程通常涉及到人與系統(tǒng)的交互,或者只是系統(tǒng)之間的交互(參見圖3)。交易流程是大規(guī)模流程的一個很好的例子。行政管理部門的交易人員在他的銷售訂單系統(tǒng)中接收一個來自對沖基金管理人員的交易執(zhí)行命令,或者他接到一份傳真或一個電話。交易人員檢查庫存系統(tǒng)的安全性或資金,并借助他的交易對手執(zhí)行交易??梢灾圃旒堎|(zhì)入場券,而交易助手可能必須在下行系統(tǒng)中進入它。(圖03)

當(dāng)因為下行系統(tǒng)之一錯誤地再進入,而幫助臺分析人員收到一份異常報告時,另一個內(nèi)部流程啟動了。然后,他在內(nèi)部記事薄之一中查找數(shù)據(jù)(原始進入記錄),請求來自事務(wù)部門的傳真(我們假定討論的交易超過了結(jié)算日期),而且因為他在兩天內(nèi)沒有收到回復(fù),也許他會再次重復(fù)同樣的行為。這個流程最終當(dāng)分析人員解決了問題時終止,當(dāng)然,除非他調(diào)到另一個部門或者調(diào)出公司。然后,顧問們必須參與進來,跟蹤問題和流程,這通常需要一大筆錢。

每月的客戶聲明是定期性企業(yè)范圍內(nèi)流程的一個傳統(tǒng)例子,通常為水平LOB所特有。在大多數(shù)情況下,客戶在被不同LOB支持的產(chǎn)品中擁有帳號,例如,股票、U.S.證券和外匯。在月末發(fā)送多個聲明將會十分混亂。法律和一致性問題還需要交叉引用多個倉庫的數(shù)據(jù)。Patriot和Sarbanes-OxleyActs(一個新的業(yè)務(wù)流程,但是不賺錢)的一個主要問題是要訪問由大量LOB所擁有的數(shù)據(jù),有時還要環(huán)繞半個世界。EAI技術(shù)和消息收發(fā)試圖借助早先闡明的限制解決這些問題。通向靈活性的道路:以BPM為中心的SOA

讓我們考慮帶有Web服務(wù)的、以BPM為中心的SOA如何將現(xiàn)有的遺留企業(yè)轉(zhuǎn)換為自適應(yīng)性的企業(yè)。水平流程和異常管理是用于SOA啟用的理想候選者,可以演示可調(diào)整的和速度快的ROI。沒有經(jīng)歷業(yè)務(wù)流程再造的嚴(yán)謹,我們必須定義良好的流程圖。流程圖也是實行業(yè)務(wù)流程重新設(shè)計的第一步。如果使用BPMS設(shè)計工具(Proactivity,Intalio,InterfacingTechnologies),您可以把度量關(guān)聯(lián)到流程和行為,例如,性能、開銷、IT資源、FTE、逝去的時間、容量,等等。許多BPMS設(shè)計工具允許您運行模擬,并繼續(xù)進行流程優(yōu)化(運行what-if場景),但是這并非本文的重點。對于我們的重點來說,以下列出的是良好流程圖的一些特征:·

考慮流程而不是功能:流程告訴您完成什么工作以及如何完成。功能描述誰在哪里來完成它。·

從客戶的觀點出發(fā):考慮從外部業(yè)務(wù)事件開始的流程,例如,一次交易、一份訂單、一個主張、一個報價請求。·

在更寬泛的意義上并基于不同的服務(wù)質(zhì)量來劃分客戶類別:您生態(tài)系統(tǒng)中的性能、供應(yīng)商、業(yè)務(wù)伙伴?!?/p>

流程反映狀態(tài)變化:交易訂單、現(xiàn)金支付。從可管理的流程數(shù)量6-10開始。記住,大多數(shù)人最多只能保留一個頁面上的七樣?xùn)|西。·

定義核心流程和子流程:這里沒有科學(xué)理論,只有最佳實踐。然而,要當(dāng)心P-calculus2和Petri-nets;它們將在接下來的10年內(nèi)帶給BPM科學(xué)的嚴(yán)密性?!?/p>

將流程分解為行為

下一個目標(biāo)是通過分解行為來定義小單元。我們將這項工作稱為ElementaryBusinessServices(EBS)。如果您從多維矢量代數(shù)開始回想,空間中的任意一點都可以被定義為單元矢量的線形組合。在我們的例子中,我們以可以通過編排EBS子集來構(gòu)造任何流程的方式定義了所有EBS。正如您可能猜想的那樣,我們將EBS實現(xiàn)為Web服務(wù)。識別EBS的正確集合和粒度水平很重要。這與設(shè)計對象的重要程度相同。相同的規(guī)則和技術(shù)——封裝、狀態(tài)相關(guān)性、內(nèi)聚性、松散耦合和重構(gòu)——同樣適用,這并不使人驚奇。EBS的業(yè)務(wù)量體現(xiàn)出了大量實際優(yōu)點:1.

它是要重用的最終指南??梢酝ㄟ^任何想像得到的方式編排EBS,以形成新的LOB。2.

連續(xù)性流程改進不必等到IT適應(yīng)新的業(yè)務(wù)模型。3.

EBS對企業(yè)生態(tài)系統(tǒng)中的企業(yè)和業(yè)務(wù)伙伴可用。4.

放棄使用一個系統(tǒng)并不是一個一蹴而就的過程,而是一個循序漸進的過程。5.

可以以一種易于管理且性價比高的方式合并和獲得IT。6.

可以幾乎實時地設(shè)計和執(zhí)行一個新的業(yè)務(wù)流程。

從圖4中可以看出,我們可以使EBS在BEAWebLogicPlatform8.1(集成組件)的一個實例中可用。從技術(shù)上說,在BEAWebLogicIntegration中,Web服務(wù)被稱為業(yè)務(wù)流程資源。我們使用IDE編排新流程,使用門戶添加UI,然后將它部署為一組EJB來執(zhí)行。就是這么簡單!現(xiàn)在流程是一項IT資產(chǎn)了,就像數(shù)據(jù)庫表、存儲過程、遺留COBOL書籍和專用的計算c庫。(圖04)

許多金融服務(wù)機構(gòu)的業(yè)務(wù)分類是水平的,管理高凈值的私有客戶。在啟用了BPMSSOA的企業(yè)中,開發(fā)IT基礎(chǔ)結(jié)構(gòu)來支持這樣的新LOB完全可以與正確放置業(yè)務(wù)模型并行完成(參見圖5)(圖05)

考慮A現(xiàn)象,它們并沒有創(chuàng)造任何新的EBS。所有EBS位于任何其他郵件訂單一覽表書店中的恰當(dāng)位置:定購書籍,檢查庫存,信用卡付帳,打印聲明,準(zhǔn)備裝運,給客戶發(fā)送電子郵件。但是它沒有創(chuàng)建新流程,沒有質(zhì)疑已經(jīng)建立好的流程,甚至不用花費什么力氣。

正如HowardSmith和PeterFingar所說的那樣:“在BPM的第三次浪潮中,筒倉式思考和點到點的技術(shù)集成被靈活的、基于業(yè)務(wù)流程的體系架構(gòu)所代替?!贝送?,GartnerGroup現(xiàn)在聲明,繼續(xù)將業(yè)務(wù)邏輯硬布線到軟件或中間件中或者堅持人工步驟的公司將輸給部署流程管理體系架構(gòu)的競爭對手。實時處理業(yè)務(wù)

退一步說,預(yù)測將來是很困難的事情,但是我們用非??茖W(xué)的態(tài)度對待它,而且始終試著這么做,不管對還是錯。統(tǒng)計和預(yù)測是關(guān)于預(yù)測將來的兩門科學(xué)。投資組合評估和保險統(tǒng)計研究是有關(guān)預(yù)測的科學(xué)。實際上,我們的預(yù)測僅僅基于我們已經(jīng)經(jīng)歷過的、過去的性能和趨勢。實時處理業(yè)務(wù)需要預(yù)測未來的業(yè)務(wù)情況。然而,基本的業(yè)務(wù)協(xié)議和框架必須合適。今天,技術(shù)革新、BPMS和SOA是將業(yè)務(wù)目標(biāo)與IT相結(jié)合的基礎(chǔ)。流程提供一個封裝了變化的新層。90年代早期,PowerBuilder和VB風(fēng)格的工具使客戶端/服務(wù)器和關(guān)系數(shù)據(jù)庫系統(tǒng)的開發(fā)流行開來,通過與此相同的方式,BPMS引擎將在未來建立流程驅(qū)動的企業(yè)。事實上我預(yù)測,在我們的一生中,我們將看到對運行時流程的需求,該類流程用于實時變化或?qū)ψ孕薷牧鞒痰男枰?。無疑,人類希望能夠掌管該類變化,但是通過使用UDDI-?(?代表流程)找出最可能的服務(wù)契約和使用描述域?qū)I(yè)知識和市場情況的規(guī)則進行決策,BMPS能夠使這項工作更加容易。隨著BPMS的普及,靈活性將被極端自適應(yīng)所代替。結(jié)束語

在本文中,我描繪了合并SOA和BPM的藍圖。從一幅企業(yè)的自頂向下流程圖開始,我們定義了基本業(yè)務(wù)服務(wù)的組合選擇。垂直LOB擁有并部署EBS。Web服務(wù)實現(xiàn)它們,并使它們對企業(yè)可用。通過使用BPMS引擎的一個實例,可以設(shè)計、開發(fā)、測試新的流程,并通過結(jié)合現(xiàn)有的EBS,在數(shù)日內(nèi)添加業(yè)務(wù)值。

在我的下一篇文章中,我將:(1)講述用于給現(xiàn)實世界業(yè)務(wù)保險流程建模的BPM技術(shù),并提出一個純BPM解決方案和一個混合解決方案;(2)使用Web服務(wù)和JMS連接設(shè)計EBS并實現(xiàn)它們;(3)提出一個使用WebLogicPlatform8.1的物理基礎(chǔ)結(jié)構(gòu);并(4)討論面向服務(wù)體系架構(gòu)中的BPMS難題和新出現(xiàn)的模式。

直到:流程無處不在。您能發(fā)現(xiàn)它們嗎?(三)簡單到復(fù)雜,BPM技術(shù)促進SOA發(fā)展CNET中國·PC

類型:轉(zhuǎn)載

作者:csdn

責(zé)編:小蝎

時間:2006-10-23

BPM(企業(yè)流程管理,BusinessProcessManagement)與SOA(服務(wù)導(dǎo)向架構(gòu),ServiceOrientedArchitecture)各自歷經(jīng)多年的發(fā)展,越來越成為人們的焦點。眾多廠商成為了SOA技術(shù)架構(gòu)的推動者,其中包括IBM、BEA、HP、Oracle和SAP。

SOA可以看作是B/S模式、XML/WebService技術(shù)與管理軟件的結(jié)合。它通過組合單獨業(yè)務(wù)和流程實現(xiàn)復(fù)雜的業(yè)務(wù)應(yīng)用,而這些業(yè)務(wù)功能和流程稱為服務(wù),SOA把業(yè)務(wù)流程視為獨立于應(yīng)用程序及其運行的平臺的可復(fù)用組件。從SOA概念提出以來,越來越多的主流廠商開始了BPM與SOA的應(yīng)用。今年3月,BEA收購Fuego擴展SOA到BPM軟件,以此使用新的BPM升級SOA平臺。2月,HP和Oracle集團宣布,HP的服務(wù)咨詢和集成(ServicesConsulting&Integration)將會同Oracle的Fusion中間件,加入到它的SOA的投資組合以及HPOpenView管理軟件套件,以Fusion融合SOA。去年,Oracle收購了BPM專業(yè)公司Collaxa;SAP重新設(shè)計軟件,以便集成自由版本的面向BPM的中間件NetWeaver。

除平臺提供商以外,開源廠商也試圖占領(lǐng)擁有自己的SOA卻缺乏服務(wù)的市場。JBoss公司在2005年10月發(fā)布的企業(yè)過程管理引擎,圍繞業(yè)務(wù)過程執(zhí)行語言(BusinessProcessExecutionLanguageBPEL)提供了一種可插拔的體系結(jié)構(gòu)、擴展的任務(wù)管理以及新的可擴展性。BPEL雖然是用來編排Web服務(wù)的,但依然適合用來集成,而不是深入的業(yè)務(wù)邏輯。BPM無論從技術(shù)還是方法上都將促進SOA的發(fā)展。在此過程中,大型平臺廠商IBM、BEA、SAP、Oracle等將會嘗試建立一種新SOA標(biāo)準(zhǔn);而開源廠商努力構(gòu)建一套工具,不把自己禁錮于用一種方法構(gòu)建SOA。從BPM的IT需求與SOA技術(shù)角度上看,BPM與SOA的融合也具有先天優(yōu)勢。BPM的范圍覆蓋了企業(yè)運營的各個環(huán)節(jié),如生產(chǎn)、銷售、物流、財務(wù)等企業(yè)經(jīng)營活動,甚至延伸到供應(yīng)商和經(jīng)銷商。其產(chǎn)品開發(fā)包括6個部分,從基礎(chǔ)開始為:開發(fā)語言,如BPEL、Java等;BPM服務(wù)器,包含EAI/BPM平臺產(chǎn)品;BPM工具,包括用戶接口工具、過程建模工具、軟件需求工具等;BPM套件;BPM知識架構(gòu);BPM系統(tǒng)和其應(yīng)用。由此可見,BPM的IT需求與SOA技術(shù)具有以下相似點:1.BPM涵蓋范圍廣泛,需要完成因事件觸發(fā)的完全不相干的事件,此特點正與SOA的松散耦合特點相吻合。2.BPM需要多部門、區(qū)域的協(xié)同。在此中環(huán)境中網(wǎng)絡(luò)環(huán)境的安全性可由SOA技術(shù)構(gòu)架中的WS-Security、LDAP(LightweightDirectoryAccessProtocol-輕量級目錄訪問協(xié)議)、PKI(PublicKeyInfrastructure-公鑰基礎(chǔ)設(shè)施)架構(gòu)和數(shù)位簽章等機制來完成。3.BPM系統(tǒng)構(gòu)成元素種類繁多而復(fù)雜,包含分布于各模塊的企業(yè)邏輯和規(guī)則。而SOA可以看作是B/S模式、XML/WebService技術(shù)與管理軟件的延續(xù)。

當(dāng)前多數(shù)SOA環(huán)境能提供系統(tǒng)管理工具給系統(tǒng)管理員使用,協(xié)助管理SOA架構(gòu)下模塊的安裝、移除、啟動等。目前能夠?qū)崿F(xiàn)SOA的產(chǎn)品包括:MicrosoftBiztalkServer,webMethodsBusinessIntegrator,IBMSeeBeyond,TIBCO和Vignette。在SOA提出以前,大部分BPM產(chǎn)品在流程圖中采用自有定義流程邏輯。4.企業(yè)BPM系統(tǒng)的實施往往從最簡單的開始,逐漸提升為復(fù)雜的BPM系統(tǒng)。而SOA模塊化的特性正好吻合了此特性。(四)分析:BPM與SOA之間的區(qū)別及聯(lián)系CNET中國·PC

類型:轉(zhuǎn)載

作者:newhappy2008

責(zé)編:小蝎

時間:2006-10-23

關(guān)于業(yè)務(wù)流程管理(BPM)和面向服務(wù)架構(gòu)(SOA)之間關(guān)系的討論熱鬧非凡。二者也是多年來的熱門話題,但是關(guān)于它們的討論通常都出現(xiàn)在互不相關(guān)的論壇上,討論它們的人通常也屬于不同的圈子。不過現(xiàn)在這種情況正在改變,因為這兩個概念以及相關(guān)技術(shù)的使用者和提供者正日漸將二者結(jié)合起來看待。

BPM陣營通常聲稱,SOA對于實現(xiàn)BPM來說不是必需的。只需部署一個BPM套件,就可以更快地實現(xiàn)目標(biāo)而不會帶來多少復(fù)雜性。SOA陣營則注重于如何從一般意義上解決企業(yè)IT的復(fù)雜性。該陣營通常聲稱BPM是SOA的一個特性,但是它是SOA解決方案的一部分,而不是一個單獨的東西。當(dāng)SOA領(lǐng)域的人士談到BPM時,該術(shù)語通常與服務(wù)編排或流程整合同義,而不強調(diào)對業(yè)務(wù)分析人員友好的建?;蛉藛T交互,而后者對BPM陣營來說非常重要。

為了澄清這些誤解,我認為有必要闡明BPM與SOA的不同本質(zhì):SOA是一種架構(gòu)方法;BPM則是一組協(xié)調(diào)活動。

因此,可以很容易地得到使用SOA或不使用SOA的BPM,反之亦然。我們來看看不同組合的優(yōu)點。

如果部署一個不使用SOA的BPM套件,則可以獲得快速創(chuàng)建、執(zhí)行和監(jiān)控/管理業(yè)務(wù)流程的能力。業(yè)務(wù)流程的模型可以由業(yè)務(wù)分析人員創(chuàng)建,但是其完整實現(xiàn)則需要與底層IT系統(tǒng)的集成(以及定義用戶如何與該流程交互,但是現(xiàn)在我們暫不考慮)。BPM套件(如BEA的AquaLogicBPMSuite)支持使用各種不同的技術(shù)(面向服務(wù)的或不是面向服務(wù)的)對應(yīng)用程序和數(shù)據(jù)庫進行輕松訪問。實現(xiàn)由代碼和來自于并依賴于底層系統(tǒng)接口的元數(shù)據(jù)組成,因此,對底層數(shù)據(jù)庫和應(yīng)用程序的任何更改都將導(dǎo)致對業(yè)務(wù)流程的更改。

如果組織和IT環(huán)境規(guī)模比較小,并且由同樣一組人來控制所有的系統(tǒng)(包括BPM套件)的話,這是完全可以的。如果底層系統(tǒng)完全不更改的話,這種方法同樣運行良好。

但是,如果BPM套件由一個小組部署,并消費來自另一個小組的系統(tǒng)的服務(wù),那么協(xié)調(diào)和管理每個小組中的更改的任務(wù)很快就會變得非常困難。這是SOA要解決的典型問題,因此,SOA可以應(yīng)用于BPM套件的部署,就像應(yīng)用于其它地方一樣。

如果BPM作為SOA的一部分進行部署,這意味著當(dāng)一個業(yè)務(wù)流程連接到底層系統(tǒng)時,它連接到由企業(yè)服務(wù)總線所提供的代理服務(wù),這樣就隱藏了底層應(yīng)用程序和數(shù)據(jù)庫的復(fù)雜性。這具有以下優(yōu)點:

將業(yè)務(wù)流程連接到系統(tǒng)的過程會更簡單,因為IT可以公開更有用的接口,比如聚合的數(shù)據(jù)服務(wù)或使用標(biāo)準(zhǔn)協(xié)議而不是專有協(xié)議的服務(wù)。這減少了實現(xiàn)流程所需的IT工作量,并允許流程人員將精力集中于流程,而不是粘合流程與底層系統(tǒng)所需的技術(shù)。

它使得實現(xiàn)更為健壯,因為對底層IT系統(tǒng)的更改不必影響流程所使用的接口。

它在BPM套件之外提供了一個獨立的控制和管理層。這允許IT小組更好地管理他們所擁有和維護的服務(wù)的策略和資源。

SOA還支持從BPM套件中獲得對它所連接到的系統(tǒng)的更好可見度。IT小組可以在服務(wù)注冊庫中注冊服務(wù),流程開發(fā)人員(甚至可能是業(yè)務(wù)分析師)可以在構(gòu)建流程時瀏覽這樣的注冊庫。這確保了服務(wù)可以被正確地使用和重用,而且通常簡化了業(yè)務(wù)流程,因為使用正確的服務(wù)可以將流程本身的復(fù)雜性降至最低。

無疑,這些優(yōu)點只有在IT基礎(chǔ)架構(gòu)足夠復(fù)雜,并且/或者BPM項目達到一定的范圍和規(guī)模時才能顯現(xiàn)出來。因此,在很多情況下,應(yīng)該首先開發(fā)出BPM,而將SOA組件留待以后考慮。

最好的方法是一開始就讓業(yè)務(wù)運作團隊和IT企業(yè)架構(gòu)小組保持良好的對話,并針對未來進行規(guī)劃,同時支持戰(zhàn)術(shù)性執(zhí)行。這就需要正確地組合產(chǎn)品。例如,BPM套件本身應(yīng)該能夠提供豐富的連通性,以便無需全面應(yīng)用完善的SOA來使得BPM運行,這一點非常重要。類似地,BPM套件應(yīng)該支持SOA,這樣BPM與SOA才不至于存在于獨立的豎井中,這也很重要。(五)OASIS總裁PatrickGannon談SOA與開放標(biāo)準(zhǔn)CNET中國·PC

類型:轉(zhuǎn)載

作者:Cnet

責(zé)編:小蝎

時間:2006-10-23

PatrickGannon:今天來給大家介紹一下SOA對產(chǎn)業(yè)的一些好處和標(biāo)準(zhǔn)對產(chǎn)業(yè)的一些影響。這一頁是我的簡單介紹。主要介紹一下開放標(biāo)準(zhǔn)和SOA對公司的發(fā)展有哪些影響。今后的電子商務(wù)將會搭建在SOA的平臺上,現(xiàn)在SOA和開放標(biāo)準(zhǔn)還處于初期階段。這一頁幻燈片是介紹了一下SOA的基本情況。為了達到SOA所承諾的前景,需要建立一個共同的框架體系和標(biāo)準(zhǔn)體系。公司要在SOA投資,必須要獲得一些收益,這樣保證他們的資產(chǎn)有更好的流動性,也保證他們的資產(chǎn)有長期保值的能力。所謂流動性就是靈活多樣的意思,也就是說SOA的標(biāo)準(zhǔn)體系和核心技術(shù)要能夠滿足各式各樣應(yīng)用的需求。SOA很重要的特性是能夠讓你對軟件的投資有長期的保值性,能夠避免重復(fù)投資,可以讓你的軟件模塊可以重復(fù)地使用。

為了達到這些目標(biāo),有一些很基本的工作需要做。我們必須要有一個共同的體系結(jié)構(gòu)和一套共同的詞匯表,大家都知道每一個軟件的變量代表了什么意思?,F(xiàn)在的問題是各個行業(yè)一些主要的技術(shù)廠商,他們看的都局限于他們這個行業(yè)或者是自己的技術(shù)體系來考慮整個軟件應(yīng)用的問題。這個問題是不同的詞匯表,不同詞匯的意義和不同的表示方法都對使用軟件技術(shù)的發(fā)展帶來了障礙。我們的解決方法是什么?在商業(yè)業(yè)務(wù)層面創(chuàng)造互操作性。

其中一個方法是實現(xiàn)跨部門的應(yīng)用互動和應(yīng)用的集成。為了達到這個目標(biāo),開放標(biāo)準(zhǔn)是其中一個很重要的措施。很多公司問為什么我們需要標(biāo)準(zhǔn)?我們看到為了建立標(biāo)準(zhǔn)體系需要很多的投入,一個標(biāo)準(zhǔn)組織就是為了讓業(yè)界的企業(yè)一起共同做標(biāo)準(zhǔn)的工作,降低大家分頭做標(biāo)準(zhǔn)的成本。軟件公司需要知道他們做什么標(biāo)準(zhǔn)、同時應(yīng)該了解標(biāo)準(zhǔn)是怎么產(chǎn)生的,通過什么樣的方式使標(biāo)準(zhǔn)有一個基本的接受情況。我們請了DelphiGroupResearch做一個標(biāo)準(zhǔn)的調(diào)研,看整個企業(yè)對標(biāo)準(zhǔn)的認識,和目前對標(biāo)準(zhǔn)研究的看法。有三個重要的調(diào)研結(jié)果。采用開放標(biāo)準(zhǔn)使得企業(yè)的軟件可以重復(fù)使用,數(shù)據(jù)也可以在不同的平臺上進行共享。第二個結(jié)論是采用了開放標(biāo)準(zhǔn),企業(yè)的研發(fā)工作可以在更大的協(xié)同范圍,甚至是攝入最終用戶來進行共同的開發(fā)。我們看到開放標(biāo)準(zhǔn)對于WebService的使用是非常重要的。

OASIS是一個國際標(biāo)準(zhǔn)組織,主要是針對先進的結(jié)構(gòu)化數(shù)據(jù)的信息標(biāo)準(zhǔn)。OASIS不光只是研究和產(chǎn)生標(biāo)準(zhǔn),同時也跟其他國際組織一起合作來推動標(biāo)準(zhǔn)的采用和技術(shù)的發(fā)展。OASIS有一個非常開放的組織結(jié)構(gòu),可以讓會員很容易在組織里面表達自己,目前有650個不同的企業(yè)會員,來自80個國家。OASIS在WebService、電子商務(wù)、eBusiness和文檔管理方面是目前世界上權(quán)威的標(biāo)準(zhǔn)組織。通過13年的努力,OASIS已經(jīng)得到廣泛的承認,OASIS不僅可以直接向國際標(biāo)準(zhǔn)組織、國際電聯(lián)和聯(lián)合國相關(guān)標(biāo)準(zhǔn)組織直接提交標(biāo)準(zhǔn)提案。

OASIS不光只是由技術(shù)廠商參加的標(biāo)準(zhǔn)技術(shù)組織,實際上有35%的成員來自于客戶,也就是說可以對甲方有影響力的部門,還有大概15%的研究單位。OASIS也是一個發(fā)展很快的組織,我來中國很重要的目的是希望能夠參與快速發(fā)展的亞太地區(qū)的經(jīng)濟活動。

這是OASIS在亞太地區(qū)目前的成員,這是在大陸地區(qū)的會員成員,我已經(jīng)參觀過了書生、長風(fēng)聯(lián)盟和神州數(shù)碼,以及互聯(lián)網(wǎng)中心。根據(jù)我這個星期在這邊的感覺,我認為很快會有更多的公司參加OASIS這個組織。我邀請大家能夠參與OASIS這個組織。

OASIS是為SOA和Web服務(wù)的發(fā)展提供重要的指導(dǎo)作用。OASIS的工作覆蓋了SOA和Web服務(wù)一些非常重要的領(lǐng)域。這是OASIS在SOA和Web服務(wù)里重要的領(lǐng)域和技術(shù)工作組所覆蓋的一些SOA和Web服務(wù)的重要領(lǐng)域。OASIS不但是推動標(biāo)準(zhǔn)的研發(fā)和發(fā)布,也推動標(biāo)準(zhǔn)的全面采用。OASIS是有25個技術(shù)委員會在SOA領(lǐng)域里展開技術(shù)的研究工作。對于公司對eBusiness有興趣的公司,有一個商業(yè)編排工作組。標(biāo)準(zhǔn)、訪問權(quán)限控制也是OASIS在SOA和Web服務(wù)領(lǐng)域里的重要工作。

Web服務(wù)的管理也是我們一個很重要的技術(shù)研究工作。可靠的消息傳輸也是我們的工作之一。這是UDDI部分的工作。你們看到在OASIS里對SOA和Web服務(wù)做了大量的研究和標(biāo)準(zhǔn)建設(shè)工作,這也是很多公司參加OASIS的直接目的。大家都知道當(dāng)一個公司在新技術(shù)方面做投入時都會涉及到一個潛在的風(fēng)險。SOA可以幫助公司降低采用新技術(shù)的風(fēng)險。企業(yè)今天可以做什么呢?一個是可以參加OASIS組織,或者是可以觀察、了解一下OASIS組織能做什么。因為這些標(biāo)準(zhǔn)都是在全世界推廣和采用的,所以非常重要的是要讓在中國的軟件企業(yè)或者是中國的最終用戶能夠?qū)λ麄兊募夹g(shù)需求和他們的一些要求很明確地表示出來。表示出來以后,能夠影響標(biāo)準(zhǔn)的產(chǎn)生,而且標(biāo)準(zhǔn)是在全球范圍內(nèi)推動的。其中軟件公司在OASIS的工作是提出新的研究方向。其中一個例子就是書生公司已經(jīng)在上個星期提出了UOML在OASIS里立項。我相信肯定有很多其他的公司可以把他們創(chuàng)新性的技術(shù)提案通過OASIS這個平臺建立起來。對于小的公司,沒有很多錢來參加像這種標(biāo)準(zhǔn)組織的話,也可以多看一看標(biāo)準(zhǔn)組織能不能對你們的市場活動帶來好處。

除了標(biāo)準(zhǔn)的研究工作以外也跟很多組織合辦活動,把會員的一些技術(shù)在更大的范圍里展示。對于最終客戶來說,OASIS對他們也有很多好處。對于最終用戶如果能夠把他們對技術(shù)的需求明確提出來之后,可以在明確的過程中考慮進去。OASIS有很多會員是政府部門,這些政府部門參加的原因是他們希望觀察標(biāo)準(zhǔn)的研究情況,對標(biāo)準(zhǔn)提出一些建議。這些政府部門也利用OASIS平臺來了解哪些技術(shù)方向值得政府的資助,對參加這些研究方向的企業(yè)優(yōu)先考慮進行資助。對于開放標(biāo)準(zhǔn)和SOA的研究,希望能夠邀請和OASIS一起共同討論SOA和開放標(biāo)準(zhǔn)的工作(六)業(yè)界觀察:為什么SOA如此得勢?【正文】

作為未來的技術(shù)趨勢之一,SOA正無可爭議地引領(lǐng)著軟件業(yè)的新一輪浪潮,并在未來給軟件和網(wǎng)絡(luò)帶來革命性的變化。為什么SOA如此得勢?這是因為SOA改變了過去開發(fā)應(yīng)用的模式,將軟件按照業(yè)務(wù)需求定義成“組件”,作為共享資源,提供以服務(wù)為中心的應(yīng)用軟件設(shè)計方法。這種方法,能夠提高IT對業(yè)務(wù)的響應(yīng)能力,使企業(yè)得以實時支持業(yè)務(wù)的變化,最終幫助企業(yè)轉(zhuǎn)變?yōu)榉?wù)驅(qū)動型企業(yè)。

早在2002年Gartner就預(yù)測,到2008年,SOA將成為占有絕對優(yōu)勢的軟件工程實踐方法,它將結(jié)束傳統(tǒng)的整體軟件體系架構(gòu)長達40年的統(tǒng)治地位,屆時,將有70%的企業(yè)在進行企業(yè)IT建設(shè)時會轉(zhuǎn)向SOA。從技術(shù)上講,SOA并不是一個新概念,早在20世紀(jì)90年代中期,Gartner就提出了SOA的概念,但當(dāng)時的軟件技術(shù)發(fā)展和信息化水平還不足以使它走入實用階段。進入21世紀(jì),隨著Web服務(wù)等相關(guān)標(biāo)準(zhǔn)的出現(xiàn)和成熟,SOA開始從概念走向?qū)嵱谩?/p>

SOA不是某個產(chǎn)品,也不是某個技術(shù),而是一種軟件設(shè)計架構(gòu)和方法。SOA要求開發(fā)者從服務(wù)集成的角度來設(shè)計應(yīng)用軟件,它將應(yīng)用程序的不同功能組件定義為“服務(wù)”,通過“服務(wù)”之間的良好接口聯(lián)系起來。(也就是“服務(wù)”之間的松耦合。)接口是采用中立方式進行定義的,獨立于實現(xiàn)“服務(wù)”的硬件平臺、操作系統(tǒng)和編成語言。而且這些構(gòu)建在各種各樣系統(tǒng)中的“服務(wù)”可以以一種統(tǒng)一和通用方式進行交互。保證系統(tǒng)靈活性,另外,還可以保證“服務(wù)”的重復(fù)利用。

由此可以看出,SOA的核心概念是“重用”和“互操作”,從而使企業(yè)的IT系統(tǒng)擁有極大的靈活性。SOA的另一層意義就是整合,它將企業(yè)的IT資源整合成標(biāo)準(zhǔn)的、可操作的服務(wù),使其能被重新組合和應(yīng)用。在這種架構(gòu)下,IT系統(tǒng)的復(fù)雜性并沒有增加,相反,隨著系統(tǒng)的不斷完善,整個系統(tǒng)的架構(gòu)將變得更加清晰。

現(xiàn)在隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,企業(yè)在信息化建設(shè)中產(chǎn)生了大量為滿足產(chǎn)品或服務(wù)需要的軟件系統(tǒng),如:ERP、CRM、OA、SCM等一系列IT軟件系統(tǒng)。但這些系統(tǒng)一般都是單獨實施、獨立存在的,由于數(shù)據(jù)標(biāo)準(zhǔn)不統(tǒng)一,接口不一致,系統(tǒng)間往往缺少聯(lián)系與合作,這也就導(dǎo)致了一個系統(tǒng)成為一個“孤島”。而基于SOA的理念,則使企業(yè)在需要改變IT系統(tǒng)時的靈活性大為增加。

SOA架構(gòu)定義了搭建企業(yè)軟件架構(gòu)的一種新方法,它的出現(xiàn)使所有應(yīng)用在交換數(shù)據(jù)和處理過程中,不需要考慮應(yīng)用軟件是用什么編程語言開發(fā)的或在什么操作系統(tǒng)下運行。在這種模式下,一個應(yīng)用或應(yīng)用的一部分其實是一種服務(wù),其他的應(yīng)用和客戶都可以在無需編寫大量代碼的情況下使用這些服務(wù),這一切都使一些大企業(yè)或在地理上分布范圍比較廣的開發(fā)隊伍能夠更好地合作,因為這些SOA架構(gòu)下的中間件業(yè)務(wù)模塊都能夠被重新配置或以新方式優(yōu)化來滿足新的需求。正是SOA的重用性和互操作性所帶來的靈活性實現(xiàn)了企業(yè)IT資源整合,使企業(yè)IT資源真正面向于服務(wù)。

SOA作為一種概念雖然已經(jīng)成熟,并得到了國內(nèi)外主流軟件開發(fā)商和企業(yè)客戶的認可,目前主流軟件廠商均已經(jīng)完成了基于SOA的改造,但在客戶端大規(guī)模的應(yīng)用還有許多事情要做。首先,它包括一系列技術(shù)和規(guī)范,面臨諸多挑戰(zhàn),尤其在項目開發(fā)初始,付出的代價要比傳統(tǒng)軟件項目大得多。其次,實現(xiàn)SOA的Web服務(wù)技術(shù)尚不成熟,標(biāo)準(zhǔn)還處在發(fā)展之中。目前,很多企業(yè)對于SOA的認識還僅限于一種“整合”IT技術(shù)的概念,人們對于SOA認識的誤區(qū)還有很多。面向服務(wù)架構(gòu)(SOA)的原則Webservice已經(jīng)不再是新婚的娘子。眾多企業(yè)都已經(jīng)創(chuàng)建各種實驗性WebServices項目,事實證明,這項新興的分布式計算技術(shù)確實能夠降低集成和開發(fā)的成本。另外,一些關(guān)鍵的WebSer

vices標(biāo)準(zhǔn)紛紛制定,強安全(robustsecurity)和管理方面的產(chǎn)品也陸續(xù)問世。對于志向遠大的企業(yè)來說,他們已經(jīng)在考慮下一步了。對大多數(shù)公司來說,下一步要考慮的不再是點對點的應(yīng)用,而是Webservices在企業(yè)間以及業(yè)務(wù)伙伴間更為寬廣的應(yīng)用。這種技術(shù)的變遷需要更松散耦合、面向基于標(biāo)準(zhǔn)的服務(wù)的架構(gòu)。這樣一個架構(gòu)要求對IT在組織中的角色有新的觀點和認識,而不僅僅是一種實現(xiàn)方法。通過對業(yè)務(wù)的敏捷反應(yīng),企業(yè)可以得到實實在在的回報,而要達到這一點,面向服務(wù)架構(gòu)設(shè)計師的角色非常關(guān)鍵。除此之外,潛在的回報更是不可勝數(shù)-分布計算技術(shù)能夠保證對業(yè)務(wù)需求足夠靈活的反應(yīng),而這種業(yè)務(wù)上的敏捷正是各公司夢寐以求而目前還遙不可及的。分布式計算將網(wǎng)絡(luò)上分布的軟件資源看作是各種服務(wù)。面向服務(wù)架構(gòu)是一種不錯的解決方案。但這種架構(gòu)不是什么新思想;CORBA和DCOM就很類似,但是,這些過去的面向服務(wù)架構(gòu)都受到一些難題的困擾:首先,它們是緊密耦合的,這就意味著如分布計算連接的兩端都必須遵循同樣API的約束。打比方說,如果一個COM對象的代碼有了更改,那么訪問該對象的代碼也必須作出相應(yīng)更改。其二,這些面向服務(wù)架構(gòu)受到廠商的約束。Microsoft控制DCOM自不必說,CORBA也只是一個偽裝的標(biāo)準(zhǔn)化努力,事實上,實現(xiàn)一個CORBA架構(gòu),經(jīng)常都是在某個廠商對規(guī)范的實現(xiàn)上進行工作。Webservices是在改進DCOM和CORBA缺點上的努力。今天應(yīng)用Webservices的面向服務(wù)架構(gòu)與過去不同的特點就在于它們是基于標(biāo)準(zhǔn)以及松散耦合的。廣泛接受的標(biāo)準(zhǔn)(如XML和SOAP)提供了在各不同廠商解決方案之間的交互性。而松散耦合將分布計算中的參與者隔離開來,交互兩邊某一方的改動并不會影響到另一方。這兩者的結(jié)合意味著公司可以實現(xiàn)某些Webservices而不用對使用這些Webservices的客戶端的知識有任何了解。我們將這種基于標(biāo)準(zhǔn)的、松散耦合的面向服務(wù)的架構(gòu)簡稱為SOA。SOA的強大和靈活性將給企業(yè)帶來巨大的好處。如果某組織將其IT架構(gòu)抽象出來,將其功能以粗粒度的服務(wù)形式表示出來,每種服務(wù)都清晰地表示其業(yè)務(wù)價值,那么,這些服務(wù)的顧客(可能在公司內(nèi)部,也可能是公司的某個業(yè)務(wù)伙伴)就可以得到這些服務(wù),而不必考慮其后臺實現(xiàn)的具體技術(shù)。更進一步,如果顧客能夠發(fā)現(xiàn)并綁定可用的服務(wù),那么在這些服務(wù)背后的IT系統(tǒng)能夠提供更大的靈活性。

但是,要得到種強大和靈活性,需要有一種實現(xiàn)架構(gòu)的新方法,這是一項艱巨的任務(wù)。企業(yè)架構(gòu)設(shè)計師必須要變成“面向服務(wù)的架構(gòu)設(shè)計師”,不僅要理解SOA,還要理解SOA的實踐。在架構(gòu)實踐和最后得到的架構(gòu)結(jié)果之間的區(qū)別非常微妙,也非常關(guān)鍵。本文將討論SOA的實踐,即:面向架構(gòu)的設(shè)計師在構(gòu)建SOA時必須要做的事情。SOA的原則SOA是一種企業(yè)架構(gòu),因此,它是從企業(yè)的需求開始的。但是,SOA和其它企業(yè)架構(gòu)方法的不同之處在于SOA提供的業(yè)務(wù)敏捷性。業(yè)務(wù)敏捷性是指企業(yè)對變更快速和有效地進行響應(yīng)、并且利用變更來得到競爭優(yōu)勢的能力。對架構(gòu)設(shè)計師來說,創(chuàng)建一個業(yè)務(wù)敏捷的架構(gòu)意味著創(chuàng)建這樣一個IT架構(gòu),它可以滿足當(dāng)前還未知的業(yè)務(wù)需求。要滿足這種業(yè)務(wù)敏捷性,SOA的實踐必須遵循以下原則:*業(yè)務(wù)驅(qū)動服務(wù),服務(wù)驅(qū)動技術(shù)從本質(zhì)上說,在抽象層次上,服務(wù)位于業(yè)務(wù)和技術(shù)中間。面向服務(wù)的架構(gòu)設(shè)計師一方面必須理解在業(yè)務(wù)需求和可以提供的服務(wù)之間的動態(tài)關(guān)系,另一方面,同樣要理解服務(wù)與提供這些服務(wù)的底層技術(shù)之間的關(guān)系。*業(yè)務(wù)敏捷是基本的業(yè)務(wù)需求SOA考慮的是下一個抽象層次:提供響應(yīng)變化需求的能力是新的“元需求”,而不是處理一些業(yè)務(wù)上的固定不變的需求。從硬件系統(tǒng)而上的整個架構(gòu)都必須滿足業(yè)務(wù)敏捷的需求,因為,在SOA中任何的瓶頸都會影響到整個IT環(huán)境的靈活性。*一個成功的SOA總在變化之中SOA工作的場景,更象是一個活的生物體,而不是象傳統(tǒng)所說的“蓋一棟房子”。IT環(huán)境唯一不變的就是變化,因此面向服務(wù)架構(gòu)設(shè)計師的工作永遠不會結(jié)束。對于習(xí)慣于蓋房子的設(shè)計師來說,要轉(zhuǎn)向設(shè)計一個活的生物體要求嶄新的思維方式。如下文所寫的,SOA的基礎(chǔ)還是一些類似的架構(gòu)準(zhǔn)則。SOA基礎(chǔ)在IT行業(yè)有兩個越來越普遍的發(fā)展方向,一個是架構(gòu)方面的,一個是方法學(xué)方面的,面向服務(wù)的架構(gòu)設(shè)計師可以從中有所收獲。第一個就是MDA(模型驅(qū)動架構(gòu)),由提出CORBA的OMG模型提出。MDA認為架構(gòu)設(shè)計師首先要對待創(chuàng)建的系統(tǒng)有一個形式化的UML(也是由OMG提出)的模型。MDA首先給出一個平臺無關(guān)的模型來表示系統(tǒng)的功能需求和usecases,根據(jù)系統(tǒng)搭建的平臺,架構(gòu)設(shè)計師可以由這個平臺無關(guān)的模型得到平臺相關(guān)的模型,這些平臺相關(guān)模型足夠詳細,以至于可以用來直接生成需要的代碼。MDA的核心就在于在設(shè)計階段系統(tǒng)就已經(jīng)完全描述,這樣,在創(chuàng)建系統(tǒng)的時候,幾乎就沒有錯誤解釋的可能,模型也就可以直接生成代碼。但MDA有一些局限性:首先,MDA假設(shè)在創(chuàng)建模型之前,業(yè)務(wù)需求已經(jīng)全部描述,而這一點,在當(dāng)前典型的動態(tài)業(yè)務(wù)環(huán)境中幾乎是不可能的。第二,MDA沒有一個反饋機制。如果開發(fā)人員對模型有需要改動的地方,并沒有提供給他們這么一個途徑。SOA的另一個基礎(chǔ)是敏捷方法(AM),其中非常有名的方法是極限編程(XP)。象XP這樣的AM提供了在需求未知或者多變的環(huán)境中創(chuàng)建軟件系統(tǒng)的過程。XP要求在開發(fā)團隊中要有一個用戶代表,他幫助書寫測試來指導(dǎo)開發(fā)人員的日常工作。開發(fā)團隊中的所有成員都參與到設(shè)計之中,并且設(shè)計要盡量小并且非形式化。AM的目標(biāo)是僅僅創(chuàng)建用戶想要的,而不是在一些形式化模型上耗費工作量。AM的核心思想就在于其敏捷性-處理需求變更的敏捷性。AM的主要弱點是其規(guī)模上的限制,例如,XP在一個小團隊和中型項目中效果不錯,但是當(dāng)項目規(guī)模增大時,如果沒有一個一致的清晰的計劃,項目成員很難把握項目中的方方面面。從表面看來,MDA和AM似乎是相對立的-MDA假定需求是固定的,而AM恰恰相反。MDA的中心是形式化的模型,而AM恰恰要避開它們。但是,我們還是決定冒險把這些不同方法中的一些元素提取出來,放入到一個一致的架構(gòu)實踐中。在SOA中有三個抽象層次,按照SOA的第一條準(zhǔn)則:業(yè)務(wù)驅(qū)動服務(wù)、服務(wù)驅(qū)動技術(shù)。AM將業(yè)務(wù)模型直接和實踐連接起來,表現(xiàn)在平臺相關(guān)的模型之中。MDA并沒有把業(yè)務(wù)模型和平臺無關(guān)模型分開來,而是把平臺無關(guān)模型做為起點。SOA必須連接這些模型,或者說抽象層次,得到單一的架構(gòu)方法。我們將從五個視圖的架構(gòu)實現(xiàn)方法來實現(xiàn)這個連接。SOA的五視圖實現(xiàn)方法企業(yè)架構(gòu)設(shè)計師發(fā)現(xiàn)他們的職業(yè)非常有競爭力并且值得驕傲,因為他們要從很多方面來通盤考慮IT系統(tǒng)。Kruchten(RUP的開發(fā)負責(zé)人)將這些方面提取出來,在應(yīng)用到SOA時,我們稱為五視圖實現(xiàn)方法(five-viewapproach)。四個方框表示對一個架構(gòu)的不同審視方法,分別代表不同的涉眾(stakeholder)。弟五個視圖,use-case視圖涵蓋了其它視圖,在架構(gòu)中扮演的是一個特殊的角色。部署視圖將軟件映射到底層平臺和相關(guān)硬件上,是系統(tǒng)部署人員對架構(gòu)的視圖;實現(xiàn)視圖描述了軟件代碼的組織,是從開發(fā)人員角度出發(fā)的視圖;業(yè)務(wù)分析人員則利用過程視圖進行工作,它描述的是軟件系統(tǒng)的運行時特性。最后,邏輯視圖表示的是用戶的功能需求。在SOA中,面向服務(wù)的架構(gòu)必須能夠以use-case視圖中的用例將用戶連接到服務(wù),將服務(wù)連接到底層的技術(shù)。為了表示面向?qū)ο蟮募軜?gòu)是如何工作在這些視圖之上,讓我們將他們置于SOA元模型的上下文之中。SOA中兩個領(lǐng)域存在重疊:由業(yè)務(wù)模型和服務(wù)模型表示的業(yè)務(wù)領(lǐng)域和由服務(wù)模型及平臺相關(guān)模型表示的技術(shù)領(lǐng)域(兩個領(lǐng)域共享服務(wù)模型)。業(yè)務(wù)用戶通過邏輯視圖和過程視圖處理粗粒度的業(yè)務(wù)服務(wù),根據(jù)變化的業(yè)務(wù)需求,按照需要將它們安排在過程之中。另一方面,技術(shù)專家的工作是創(chuàng)建并維護服務(wù)和地層技術(shù)之間的抽象層。表示這些服務(wù)的中間模型,起到的是軸心的作用,業(yè)務(wù)以它為中心進行。SOA元模型從MDA中繼承平臺無關(guān)模型和平臺相關(guān)模型,但是添加了AM和用戶交互以及敏捷的反饋這兩部分,后者通過橢圓之間的雙向箭頭來表現(xiàn)。類似地,元模型通過引入由中心的服務(wù)模型提供的中間層抽象解決了AM在伸縮性方面的問題。這樣,服務(wù)模型中的任何需求的變化,都會反映到用戶每天的業(yè)務(wù)處理中。同樣,由于底層技術(shù)是模型驅(qū)動的,技術(shù)專家也可以根據(jù)這些變化的需求迅速而有效地作出應(yīng)變。SOA實踐和過去解決企業(yè)架構(gòu)傳統(tǒng)方式的不同之處就在于其對敏捷性的支持。如前所說,SOA的第三條原則就在于它總在變化之中。這種恒在的變化性環(huán)境是SOA實踐的基石。如圖所示,涉眾(stakeholders,譯者注:RUP中也有這個詞,表示軟件開發(fā)中涉及到的各種角色如:用戶、設(shè)計人員、開發(fā)人員乃至測試人員等等。)在一個必需的基礎(chǔ)上影響到整個架構(gòu)的變化。在當(dāng)技術(shù)專家在每天的日常工作中不斷對變化的業(yè)務(wù)需求作出響應(yīng)的這種情況下,設(shè)計階段和運行階段之間的界限變得模糊起來,很難清晰地分離這兩個階段。剩下的部分我們已經(jīng)為面向服務(wù)的架構(gòu)提供了一個高層次的框架,其中MDA和AM的元素幫助工具的使用者來創(chuàng)建和維護SOA。但是,SOA中還缺少一些內(nèi)容-那就是軟件開發(fā)商和專業(yè)的服務(wù)組織必需提供的。理想情況下,開發(fā)商必需提供面向服務(wù)的業(yè)務(wù)流程、工作流以及服務(wù)的協(xié)調(diào)工具和服務(wù);另外,能夠以一種敏捷的、平臺無關(guān)的方式充分反映業(yè)務(wù)服務(wù)的建模工具也是必須的;技術(shù)專家必須配備可以從模型中自動生成代碼,并在代碼變化時更新模型的工具,最后,開發(fā)商必須提供支持SOA的軟件,幫助面向服務(wù)的架構(gòu)設(shè)計師以一種可信并且可伸縮的方式創(chuàng)建位于服務(wù)和底層技術(shù)之間的抽象層次。幸運的是,這方面的產(chǎn)品即將上市。另外,最重要的就是貫穿本文的自頂而下的SOA實現(xiàn)方法了。今天關(guān)于Webservices的大部分思考都是自底而上的:“這是如何創(chuàng)建Webservices的方法,現(xiàn)在,我們來使用它們集成吧”,對Webservices技術(shù)的這種方法是偉大的第一步,因為它可以驚人地降低集成的開銷,這是現(xiàn)在的技術(shù)管理人員最樂意見到的了。但當(dāng)經(jīng)濟進一步發(fā)展,IT走出低谷,企業(yè)會尋求IT的幫助來提高組織戰(zhàn)略意義上的核心價值。使用面向服務(wù)的架構(gòu),IT可以提供給企業(yè)實現(xiàn)業(yè)務(wù)敏捷性的這樣一個框架。附錄資料:不需要的可以自行刪除怎樣提高電腦系統(tǒng)運行速度HYPERLINK""WindowsXP的啟動速度比Windows2000要快30%左右,但相對于Windows98仍然要慢了不少,不過,我們可以通過優(yōu)化設(shè)置,來大大提高WindowsXP的啟動速度。加快系統(tǒng)啟動速度主要有以下方法:盡量減少系統(tǒng)在啟動時加載的程序與服務(wù);對磁盤及CPU等硬件進行優(yōu)化設(shè)置;修改默認設(shè)置,減少啟動等待時間等。這些方法大部分既可減少系統(tǒng)啟動的時間,又可以節(jié)省系統(tǒng)資源,加快電腦運行速度。1.加快系統(tǒng)啟動速度WindowsXP的啟動速度比Windows2000要快30%左右,但相對于Windows98仍然要慢了不少,不過,我們可以通過優(yōu)化設(shè)置,來大大提高WindowsXP的啟動速度。加快系統(tǒng)啟動速度主要有以下方法:盡量減少系統(tǒng)在啟動時加載的程序與服務(wù);對磁盤及CPU等硬件進行優(yōu)化設(shè)置;修改默認設(shè)置,減少啟動等待時間等。這些方法大部分既可減少系統(tǒng)啟動的時間,又可以節(jié)省系統(tǒng)資源,加快電腦運行速度。(1)MsconfigWindowsXP的啟動速度在系統(tǒng)安裝初期還比較快,但隨著安裝的軟件不斷增多,系統(tǒng)的啟動速度會越來越慢,這是由于許多軟件把自己加在了啟動程序中,這樣開機即需運行,大大降低了啟動速度,而且也占用了大量的系統(tǒng)資源。對于這樣一些程序,我們可以通過系統(tǒng)配置實用程序Msconfig將它們從啟動組中排除出去。選擇“開始”菜單中的“運行”命令,在“運行”對話框中鍵入“Msconfig”,回車后會彈出“系統(tǒng)配置實用程序”對話框,選擇其中的“啟動”選項卡(如圖1),該選項卡中列出了系統(tǒng)啟動時加載的項目及來源,仔細查看每個項目是否需要自動加載,否則清除項目前的復(fù)選框,加載的項目越少,啟動的速度就越快。設(shè)置完成后需要重新啟動方能生效。(2)BootvisBootvis是微軟提供的一個啟動優(yōu)化工具,可提高WindowsXP的啟動速度。用BootVis提升WindowsXP的啟動速度必須按照正確的順序進行操作,否則將不會起到提速的效果。其正確的操作方法如下:啟動Bootvis,從其主窗口(如圖2)中選擇“工具”菜單下的“選項”命令,在“符號路徑”處鍵入Bootvis的安裝路徑,如“C:\ProgramFiles\Bootvis”,單擊“保存”退出。從“跟蹤”菜單中選擇“下次引導(dǎo)”命令,會彈出“重復(fù)跟蹤”對話框,單擊“確定”按鈕,BootVis將引導(dǎo)WindowsXP重新啟動,默認的重新啟動時間是10秒。系統(tǒng)重新啟動后,BootVis自動開始運行并記錄啟動進程,生成啟動進程的相關(guān)BIN文件,并把這個記錄文件自動命名為TRACE_BOOT_1_1。程序記錄完啟動進程文件后,會重新啟動BootVis主界面,在“文件”菜單中選擇剛剛生成的啟動進程文件“TRACE_BOOT_1_1”。窗口中即會出現(xiàn)“CPU>使用”、“磁盤I/O”、“磁盤使用”、“驅(qū)動程序延遲”等幾項具體圖例供我們分析,不過最好還是讓BootVis程序來自動進行分析:從“跟蹤”菜單中選擇“系統(tǒng)優(yōu)化”命令,程序會再次重新啟動計算機,并分析啟動進程文件,從而使計算機啟動得更快。(3)禁用多余的服務(wù)WindowsXP在啟動時會有眾多程序或服務(wù)被調(diào)入到系統(tǒng)的內(nèi)存中,它們往往用來控制Windows系統(tǒng)的硬件設(shè)備、內(nèi)存、文件管理或者其他重要的系統(tǒng)功能。但這些服務(wù)有很多對我們用途不大甚至根本沒有用,它們的存在會占用內(nèi)存和系統(tǒng)資源,所以應(yīng)該將它們禁用,這樣最多可以節(jié)省70MB的內(nèi)存空間,系統(tǒng)速度自然也會有很大的提高。選擇“開始”菜單中的“運行”命令,在“運行”對話框鍵入“services.msc”后回車,即可打開“服務(wù)”窗口。窗口的服務(wù)列表中列出了系統(tǒng)提供的所有服務(wù)的名稱、狀態(tài)及啟動類型。要修改某個服務(wù),可從列表雙擊它,會彈出它的屬性對話框(如圖3),你可從“常規(guī)”選項卡對服務(wù)進行修改,通過單擊“啟動”、“停止”、“暫?!?、“恢復(fù)”四個按鈕來修改服務(wù)的狀態(tài),并可從“啟動類型”下拉列表中修改啟動類型,啟動類型有“自動”、“手動”、“已禁用”三種。如果要禁止某個服務(wù)在啟動自動加載,可將其啟動類型改為“已禁用”。WindowsXP提供的所有服務(wù)有36個默認是自動啟動的,實際上,其中只有8個是必須保留的(見下表),其他的則可根據(jù)自己的需要進行設(shè)置,每種服務(wù)的作用在軟件中有提示。4)修改注冊表來減少預(yù)讀取,減少進度條等待時間WindowsXP在啟動過程中會出現(xiàn)一個進度條,我們可以通過修改注冊表,讓進度條只跑一圈就進入登錄畫面。選擇“開始”菜單中的“運行”命令,在“運行”對話框鍵入“regedit”命令后回車,即可啟動注冊表編輯器,在注冊表中找HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\PrefetchParameters,選擇其下的EnablePrefetcher鍵,把它的鍵值改為“1”即可。(5)減少開機磁盤掃描等待時間當(dāng)Windows日志中記錄有非正常關(guān)機、死機引起的重新啟動,系統(tǒng)就會自動在啟動的時候運行磁盤掃描程序。在默認情況下,掃描每個分區(qū)前會等待10秒鐘,如果每個分區(qū)都要等上10秒才能開始進行掃描,再加上掃描本身需要的時間,會耗費相當(dāng)長的時間才能完成啟動過程。對于這種情況我們可以設(shè)置取消磁盤掃描的等待時間,甚至禁止對某個磁盤分區(qū)進行掃描。選擇“開始→運行”,在運行對話框中鍵入“chkntfs/t:0”,即可將磁盤掃描等待時間設(shè)置為0;如果要在計算機啟動時忽略掃描某個分區(qū),比如C盤,可以輸入“chkntfs/xc:”命令;如果要恢復(fù)對C盤的掃描,可使用“chkntfs/dc:”命令,即可還原所有chkntfs默認設(shè)置,除了自動文件檢查的倒計時之外。2.提高系統(tǒng)運行速度提升系統(tǒng)運行速度的思路與加快啟動的速度類似:盡量優(yōu)化軟硬件設(shè)置,減輕系統(tǒng)負擔(dān)。以下是一些常用的優(yōu)化手段。(1)設(shè)置處理器二級緩存容量WindowsXP無法自動檢測處理器的二級緩存容量,需要我們自己在注冊表中手動設(shè)置,首先打開注冊表,找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”,選擇其下的“SecondLevelDataCache”,根據(jù)自己所用的處理器設(shè)置即可,例如PIIICoppermine/P4Willamette是“256”,AthlonXP是“384”,P4Northwood是“512”。(2)提升系統(tǒng)緩存同樣也是在“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”位置,把其下的“LargeSystemCache”鍵值從0改為1,WindowsXP就會把除了4M之外的系統(tǒng)內(nèi)存全部分配到文件系統(tǒng)緩存中,這樣XP的內(nèi)核能夠在內(nèi)存中運行,大大提高系統(tǒng)速度。通常來說,該優(yōu)化會使系統(tǒng)性能得到相當(dāng)?shù)奶嵘灿锌赡軙鼓承?yīng)用程序性能降低。需要注意的是必須有256M以上的內(nèi)存,激活LargeSystemCache才可起到正面的作用,否則不要輕易改動它。(3)改進輸入/輸出性能這個優(yōu)化能夠提升系統(tǒng)進行大容量文件傳輸時的性能,不過這只對服務(wù)器用戶才有實在意義。我們可在中新建一個DWORD(雙字節(jié)值)鍵值,命名為IOPageLockLimit。一般情況下把數(shù)據(jù)設(shè)置8~16MB之間性能最好,要記住這個值是用字節(jié)來計算的,例如你要分配10MB的話,就是10×?1024×1024,也就是10485760。這里的優(yōu)化也需要你的機器擁有大于256M的內(nèi)存。(4)禁用內(nèi)存頁面調(diào)度在正常情況下,XP會把內(nèi)存中的片斷寫入硬盤,我們可以阻止它這樣做,讓數(shù)據(jù)保留在內(nèi)存中,從而提升系統(tǒng)性能。在注冊表中找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”下的“DisablePagingExecutive”鍵,把它的值從0改為1即可禁止內(nèi)存頁面調(diào)度了。(5)關(guān)閉自動重新啟動功能當(dāng)WindowsXP遇到嚴(yán)重問題時便會突然重新開機,可從注冊表將此功能取消。打開注冊表編輯器,找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\”將AutoReboot鍵的Dword值更改為0,重新啟動后設(shè)置即可生效。(6)改變視覺效果WindowsXP在默認情況下啟用了幾乎所有的視覺效果,如淡入淡出、在菜單下顯示陰影。這些視覺效果雖然漂亮,但對系統(tǒng)性能會有一定的影響,有時甚至造成應(yīng)用軟件在運行時出現(xiàn)停頓。一般情況下建議少用或者取消這些視覺效果。選擇桌面上“我的電腦”圖標(biāo),單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“屬性”命令,打開“系統(tǒng)屬性”對話框。選擇“高級”選項卡,在其中的“性能”欄中單擊“設(shè)置”按鈕,會彈出“性能選項”對話框(如圖4),可選擇“調(diào)整為最佳性能”單選框來關(guān)閉所有的視覺效果,也可選擇“自定義”然后選擇自己需要的視覺效果。(7)合理設(shè)置頁面虛擬內(nèi)存同樣也是在“性能選項”對話框中,選擇“高級”選項卡,在其中的“虛擬內(nèi)存”欄中單擊“更改”按鈕,接下來選擇虛擬內(nèi)存為“自定義大小”,然后設(shè)置其數(shù)值。一般情況下,把虛擬設(shè)為不小于256M,不大于382M比較合適,而且最大值和最小值最好一樣。(8)修改外觀方案WindowsXP默認的外觀方案雖然漂亮,但對系統(tǒng)資源的占用也多,可將其改為經(jīng)典外觀以獲得更好的性能。在桌面空白位置單擊鼠標(biāo)右鍵,從彈出的快捷菜單中選擇“屬性”命令,會打開“顯示屬性”對話框,在“主題”選項卡選擇主題為“Windows經(jīng)典”,即可將外觀修改為更為經(jīng)濟的Windows經(jīng)典外觀。(9)取消XP對ZIP支持WindowsXP在默認情況下打開了對zip文件支持,這要占用一定的系統(tǒng)資源,可選擇“開始→運行”,在“運行”對話框中鍵入“regsvr32/uzipfldr.dll”,回車確認即可取消XP對ZIP解壓縮的支持,從而節(jié)省系統(tǒng)資源。(10)關(guān)閉Dr.WatsonDr.Watson是WindowsXP的一個崩潰分析工具,它會在應(yīng)用程序崩潰的時候自動彈出,并且在默認情況下,它會將與出錯有關(guān)的內(nèi)存保存為DUMP文件以供程序員分析。不過,記錄DUMP文件對普通用戶則毫無幫助,反而會帶來很大的不便:由于Dr.Watson在應(yīng)用程序崩潰時會對內(nèi)存進行DUMP記錄,將出現(xiàn)長時間硬盤讀寫操作,要很長一斷時間程序才能關(guān)閉,并且DUMP文件還會占用大量磁盤空間。要關(guān)閉Dr.Watson可打開注冊表編輯器,找到“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\AeDebug”分支,雙擊其下的Auto鍵值名稱,將其“數(shù)值數(shù)據(jù)”改為0,最后按F5刷新使設(shè)置生效,這樣就取消它的運行了。同樣,我們可以把所有具備調(diào)試功能的選項取消,比如藍屏?xí)r出現(xiàn)的memory.dmp,可在“系統(tǒng)屬性”對話框中選擇“高級”選項卡,單擊“啟動和故障恢復(fù)”欄中的“設(shè)置”按鈕,并在彈出的“啟動和故障恢復(fù)”對話框中選擇“寫入調(diào)試信息”為“無”(如圖5)。(11)啟動硬盤/光驅(qū)DMA模式打開“系統(tǒng)屬性”對話框,選擇“硬件”選擇卡中的“設(shè)備管理器”按鈕,打開“設(shè)備管理器”窗口,在設(shè)備列表中選擇“IDEATA/ATAPI控制器”,雙擊“主要IDE通道”或“次要IDE通過”,在其屬性對話框的“高級設(shè)置”選項卡中檢查DMA模式是否已啟動,一般來說如果設(shè)備支持,系統(tǒng)就會自動打開DMA功能,如果沒有打開可將“傳輸模式”設(shè)為“DMA(若可用)”。(12)關(guān)掉不用的設(shè)備WindowsXP總是盡可能為電腦的所有設(shè)備安裝驅(qū)動程序并進行管理,這不僅會減慢系統(tǒng)啟動的速度,同時也造成了系統(tǒng)資源的大量占用。針對這一情況,你可在設(shè)備管理器中,將PCMCIA卡、調(diào)制解調(diào)器、紅外線設(shè)備、打印機端口(LPT1)或者串口(COM1)等不常用的設(shè)備停用,方法是雙擊要停用的設(shè)備,在其屬性對話框中的“常規(guī)”選項卡中選擇“不要使用這個設(shè)備(停用)”。在重新啟動設(shè)置即可生效,當(dāng)需要使用這些設(shè)備時再從設(shè)備管理器中啟用它們。(13)關(guān)閉錯誤報告當(dāng)應(yīng)用程序出錯時,會彈出發(fā)送錯誤報告的窗口,其實這樣的錯誤報告對普通用戶而言幾乎沒有任何意義,關(guān)閉它是明智的選擇。在“系統(tǒng)屬性”對話框中選擇“高級”選項卡,單擊“錯誤報告”按鈕,在彈出的“錯誤匯報”對話框中,選擇“禁用錯誤匯報”單選項,最后單擊“確定”即可。另外我們也可以從組策略中關(guān)閉錯誤報告:從“運行”中鍵入“gpedit.msc”,運行“組策略編輯器”,展開“計算機配置→管理模板→系統(tǒng)→錯誤報告功能”,雙擊右邊設(shè)置欄中的“報告錯誤”,在彈出的“屬性”對話框中選擇“已禁用”單選框即可將“報告錯誤”禁用。(14)關(guān)閉自動更新“自動更新”功能對許多WindowsXP用戶而言并不是必需的,可將其關(guān)閉以節(jié)省系統(tǒng)資源。在“我的電腦”上單擊鼠標(biāo)右鍵,從快捷菜單中選擇“屬性”命令,選擇“系統(tǒng)屬性”對話框中的“自動更新”選項卡,勾選“關(guān)閉自動更新,我將手動更新計算機”單選框,單擊“確定”按鈕即可關(guān)閉自動更新功能。如果在“服務(wù)”已經(jīng)將“AutomaticUpdates”服務(wù)關(guān)閉,“系統(tǒng)屬性”對話框中的“自動更新”選項卡就不能進行任何設(shè)置了。(15)去掉菜單延遲去掉菜單彈出時的延遲,可以在一定程度上加快XP。要修改的鍵值位置在“HKEY_CURRENT_USER\ControlPanel\Desktop”。修改其下的“MenuShowDelay”鍵,把默認的400修改為0,按F5刷新注冊表即可生效。(16)清除預(yù)讀文件WindowsXP的預(yù)讀設(shè)置雖然可以提高系統(tǒng)速度,但是使用一段時間后,預(yù)讀文件夾里的文件數(shù)量會變得相當(dāng)龐大,導(dǎo)致系統(tǒng)搜索花費的時間變長。而且有些應(yīng)用程序會產(chǎn)生死鏈接

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論