關於
soa有以下這個得到廣泛認可的抽象定義:
定義:soa 的體系結構風格描述一組模式和指導原則,以建立鬆散耦合的基於標準且與業務相結合的服務,由於描述、實現和繫結之間實現了關注分離,這些服務能夠提供更高階別的靈活性,以響應業務威脅和機會。
可以假設有這樣乙個公司,他的需求包括:
● 眾多部門和下屬企業都在推出新產品,公司需要對此進行整合;
● 能快速地把新產品推介給使用者;
● 對現有產品需要進行擴充套件;
● 客戶群的快速變化導致對客戶的有關定義發生了變化。
其中,最為緊要的需求是,為了在競爭中立於不敗之地,公司需要加快新產品的交付速度,以往都是按月來規劃,公司希望能按天來規劃,從概念的推出到產品的實現最好能在24小時內完成。另外,為了和第三方合作,他還希望第三方能在基於他的應用平台基礎上推出新產品。
而我們所知道的是soa倡導把業務和it人員都可以理解的服務按需組裝成為應用。這種組裝甚至可以由業務人員自己完成,從而讓企業徹底擺脫面向技術的解決方案的束縛,輕鬆應對企業商業服務變化、發展的需要。而以往要對市場快速做出反應,使用者只能通過it部門不斷開發新應用、擴充套件現有應用程式來艱難地支撐其現有的業務需求。
借助soa,業務人員能集中精力解決業務問題,而技術人員能全身心地投入到技術方面,業務和技術人員來能配合工作,從而更快地應對業務需求的變化。
如果不是soa,以上那些要求是根本無法實現的。我們可以用soa對後台系統進行革命,即建立起了乙個動態業務應用的基礎設施。這些措施包括:
● 提供乙個中間層,對老系統進行了封裝;
● 使用esb來對應用基礎設施進行整合;
● 簡化管理力度,保證應用高度容錯;
● 用註冊中心和儲存庫以方便資訊的共享和重用。
根據以上案例,我們接下來討論如何將it和業務結合起來。
現在出現的soa和虛擬化技術標準。雖然這些標準都是其他國家開發出來的,再傳進來的,但我們可以把它們用來做早期的研究和開發,然後再慢慢深入到整個soa業務的開發和應用當中。包括it硬體及網路,應用形式和應用模組形式等等。
同時soa與虛擬化技術是相輔相成的,應該共同發展。即使所有基礎設施都用上了虛擬化技術,虛擬化了,但如果技術編寫等仍是傳統方式,兩者就會脫節。之所以有soa的架構,最重要的就是因為企業目前有商業的需求,而且需求量越來越大,it怎麼從靈活性的角度去適應企業的業務變化,這樣企業才能在業界有乙個很強的商業上的競爭。
soa的架構目前是整個it行業最能適應現在業務發展的情況。「現在的業務是乙個快速變化的市場,導致不同的業務會有一些變化的需求。soa架構的本質就是乙個『松耦合』的架構,不同的系統和系統之間耦合度很松,不會因為改變乙個系統導致其他系統被迫做出不必要的改變,這是soa很重要的乙個特點。這就解決了長期以來的乙個問題,就是it系統的發展和業務系統的發展不匹配,有了soa之後,乙個業務變了,it系統也可以很容易很迅速地適應這一變化。」微軟大中華區企業服務部總經理辛兒倫舉個乙個很有趣的例子,「乙個人運動的時候還是穿褲子比穿裙子更方便。」
目前,全球已有很多大公司開始了soa的應用。如ibm、sap以及微軟,當他們來到市場時,就是基於互動技術。他們當中大多數都已經有了屬於自己的soa方案與產品,而其中微軟最值得期待,全新的soa理念,soa與.net架構的融合,以及biztalk server產品都隸屬於未來微軟的soa戰略組成部分。而且,現在微軟推出的一些版本,比如sql server 2005和 microsoft visual studio 2005等這些現在和未來一兩年即將推出的產品,全部都是在soa的架構下推出的。還有微軟最近推出的vista和新一代的windows的伺服器也都是基於soa架構的。因此soa並不是飄在雲端的概念,已經有如此多的產品在令soa落地,生根發芽,開花結果。
而如ibm、惠普等企業,是早期使用soa的一批。我們可以看到,他們發展得很好。所以,soa越早使用,越有利於企業的發展。
那麼如何構建乙個有助於it與業務結合一致的架構?這和soa市場成熟度有關。對我國來說,soa市場仍處在教育階段。大部分的人,持的是觀望態度。所以,我們具體要做的是,教育企業的it部門,讓他們都有乙個概念。知道soa到底是什麼,又能給我們帶來什麼。
至於如何開始構建這麼乙個架構呢,關鍵要找準適合soa的各個行業。
首先是大企業大公司,應該最先抓住soa。因為它的財政、預算等都十分龐大。如電信通訊行業,存在著激烈的競爭,包括使用者註冊量,政策,整個市場環境的影響等;而金融行業,存款等編寫仍十分困難,也非常需要這麼乙個架構來起指導作用。
其次是普通的中小企業。在一年前,或許soa還只能被操縱在大企業手裡,因為中小企業缺乏基礎實力,對技術要求不高。但如今,隨著競爭的激烈,業務的廣泛等,中小企業對技術越來越迫切的需要會成為soa業務的又一大亮點。
當然,很多人會對此表示懷疑,因為soa還涉及到乙個關鍵問題--成本。在國內,成本可以直接決定乙個大企業或者中小企業會不會和能不能抓住這個架構。太高的成本也會直接決定soa能否在中國發展和壯大起來。但有很多解決途徑。
第一,soa的成本可以分散一部分讓零售商和客戶來承擔。
第二,中小企業可以部分負擔成本。soa和虛擬化結合,並沒有觸及到多麼龐大的技術。中小企業只需用到零售商提供的技術組合,再按照自己的實際需要調整。比如,特定的桌面技術只針對特定目標,而非普通使用者,中小企業可以只花相對較少的成本使用到適合他們的新的桌面技術。而這個桌面技術會讓他們發現很多優勢。可以用一句話來概括,花少的錢收穫多。
第三,要降低成本的方式十分多。如思傑公司新推出的降低成本技術。
soa 的具體優勢在於它幫助企業使用現有 it 基礎設施來滿足業務目標上發揮多大的作用。有效的 soa 應該:
·考慮到業務流程的整個生命週期,以幫助確保 it 與業務的一致性。
·將現有 it 系統作為可用的服務進行交付。
·管理服務以實現高效率及可復用性。
而soa 業務整合採用模型則應當能夠實現:
連線:確保不同應用程式和系統之間可靠而靈活的資訊流
整合:整合框架支援異構環境中的互操作性--掃除擺在 web 服務和非 web 服務方法所支援的整合架構前的障礙
自動化:編排業務和 it 流程,使 it 和業務目標保持一致,增加收入,控制成本
優化:一種整體方法,它通過使戰略和運營目標與業務活動保持協調統一以及為 it 服務提供支援來實現企業轉型與管理
如何將深度學習與你正在做的事情相結合?
如何將深度學習與你正在做的事情相結合,例如推薦 廣告 搜尋 測試 運維如何引入機器學習 深度學習的方法,變成智慧型推薦 智慧型搜尋 智慧型運維 智慧型測試,來自動化一些傳統的流程。那麼深度學習的方法在這些領域有哪些切入點,如何去思考目前做的事情的哪一部分可以更智慧型化的解決。從推薦和搜尋的案例出發,...
將QML與Qt Widgets相結合
在使用 qt widgets 時,經常要實現一些比較炫酷的效果 例如 滑動 翻頁 這時選擇 qml 會顯得非常簡單。那麼,問題來了 將 qml 與 qt widgets 相結合 建立了乙個簡單的 qml 檔案,用於顯示乙個綠色的矩形,其中包含乙個文字。為了說明 qml 與 qt widgets 的互...
如何將設計理論與實踐相結合
理論與實踐是乙個學習與應用中經常談到的問題。大多學習藝術和設計學科的學員多數不愛聽理論。總覺得能做出東西才是王道。但在技術熟練後思維方法卻成了最大的瓶頸。思維和方法只能靠理論解決。從理論和實踐的產生上看,原則上是先有實踐,後才有理論,把實踐過的方法 經驗梳理 總結就形成了理論。有了理論,在以後實踐的...