Ajax联手SOA打造企业级应用
來源:http://www.uml.org.cn/AJAX/200811145.asp
?
有效結合Ajax技術和SOA并進一步實現的豐富企業級應用產品能夠直接賦能于最終用戶,讓其掌握強大的功能。之所以能出現這種情況的原因在于,REA應用會更多的與潛在的重要用戶保持關聯,增強用戶內部的合理性,這也會對處于當前IT環境中的用戶群體相當大的壓力,從而促成了其實現。
當今,各個企業都在想方設法提高自己的生產效率,并且對IT資產的重組也都在努力的探索當中。借助于面向服務的架構(SOA)技術,IT組織已經在克服這些問題方面取得了一定的成效,SOA和Ajax對于整個IT業務而言意味著巨大的回報會因為兩者的出現而存在,同時,將這兩種先進技術結合起來也是作為IT業務發展所必將經歷的關鍵應用。一種以網絡為基礎,被稱為“豐富企業級應用(Rich Enterprise Applications)”或REAs的全新應用應由而生。
REA不僅僅能夠將Ajax與SOA的技術優勢淋漓盡致的展現出來,更是在這個基礎上提供一個先進的平臺,通過授權最終用戶以互動和整合的方式,有效提高產品生產效率,而這一應用方式是前所未有的。
Ajax技術提供了一種基于流覽器的豐富互聯網應用(Rich Internet Applications,RIA),它描述了一種運行在流覽器中的全新 “桌面程序”互動式豐富應用。RIA應用不僅僅只是Ajax技術,同時還包括Flex,Flash,Java甚至微軟的XAML等其他技術。就現有的企業應用看來,在技術標準以及采用率方面,Ajax將持續性的成為企業RIA應用技術的關鍵選擇。正是因為如此,我們在本文中對RIA應用的相關討論絕大部分都會是集中在Ajax。
SOA,在相對于RIA應用而言,并不是作為一套技術,而是更多的強調一種架構風格,或是說基于松藕合原則,通過統一標準的“服務”而不是硬性關聯的將應用軟件連接到一起的架構體系。雖然很多時候我們在談論服務和SOA都是處在同一背景之下,但其實這兩者是不盡相同的。我們在這篇關于REA應用的討論中就SOA服務更多的是強調其松藕合的特征,而對于一個SOA服務所使用的技術內容并未有所涉及。SOA服務可以是一個RSS源,一個數據庫展現的XML到HTTP接口,甚至可以是一個第三方搜索引擎所提供的正式SOAP接口。
Ajax與SOA的結合等于豐富企業級應用
有效結合Ajax技術和SOA并進一步實現的豐富企業級應用產品能夠直接賦能于最終用戶,讓其掌握強大的功能。之所以能出現這種情況的原因在于,REA應用會更多的與潛在的重要用戶保持關聯,增強用戶內部的合理性,這也會對處于當前IT環境中的用戶群體相當大的壓力,從而促成了其實現。
正因如此,REA應用對于未來的企業架構規劃與設計將會產生非常重大的影響。其實,REA應用的影響在某些企業中已經是可以發現的,尤其是對于一些作為早期SOA實施的較大型企業而言,類似這樣的應用已經在開始發揮作用。
早期實施企業針對于“應用對應用整合”這一需求已經完成了一個或者兩個甚至更多的SOA相關項目內容,只是他們還沒有完全將這些新近完成的數據資產直接授權于他們的最終業務用戶。正如我們都知道的,對于多數行業來說,收入方面的決定權大多掌握在這批最終用戶手中。而所有關于最終用戶以及Ajax所能對SOA的支持在以往SOA應用項目中并未曾顧及到,那就是:為用戶提供“最后一步”的業務功能。
REA所帶來的企業級效益
在當前的發展狀況之下,已經有許多世界級REA應用的成功案例可供分享,結合這些示例能夠有助于解釋REA應用在企業架構規劃和設計中的用途,效益以及所帶來的重大影響。目前我們能看到的最為成熟的一次REA應用執行是Defense intelligence分析機構部門所采用的基于Ajax的“webtop”項目。每一個分析師從一個空白的webtop開始,創建一套以SOA服務為基礎的信息資源以供使用。
服務可以是由一些計劃、預計的事件組成,如一些檔案數據庫中或是第三方新聞服務所提供或反應出來的即成事實和統計。許多可供使用的服務是從現有的整合數據資源中提煉出來可以直接為面向服務架構體系所使用的SOA型服務。其他的服務則是來自一些并非完全正式資源的“虛擬化”服務,這些資源可以是數據庫,可以是EJB應用,可以是由兩個或多個小粒度資源混合而成的“混合型服務(service mashups)”,這些混合型服務對于分析師而言比那些小粒度的單獨資源更加有用。
一旦服務被選定,將會以各種不同的方式進行個性化。例如,可以應用過濾器,改變或格式化顯示區域……甚至是一些你所期望的Web2.0級別的應用,具體的數據記錄或是項目也可以通過共享的社會化形態讓其他用戶在一個社區范圍內使用。例如,分析師可以在webtop建立一個有期效的數據項,并將其顯示給其他的分析師。很多服務還允許數據更新的同時可對原始資源進行更新,同時會通過webtop即時反應到其上各數據的同步顯示。
REA應用的快速實施
前文所說到的這個示例是否也在另一個角度展現了REA應用所能提供的快速實施示例?首先我們得清楚,用戶是處在一個駕駛人員的位置,他們手中握著這個異常強大的“交通工具”的方向盤。這種用戶可授權性的REA應用對于各個行業中的雇員都是同樣可行的,例如醫療病例卡管理人員,銷售代表,呼叫中心工作人員,信貸分析師或是索賠理算人員。
其次,在這個REA應用的示例中(幾乎所有的REA應用都是如此),Ajax和SOA是緊密聯系在一起的。很難確定究竟是SOA的原因引入了Ajax還是說Ajax更多的讓SOA深入到了企業的架構計劃當中。或許這也取決于企業自身的優勢以及對于實施時間曲線安排,通過Ajax和SOA展開具體的應用。可以確定的一點,將這兩種技術有效的結合起來會是比任意一種技術單獨使用產生更大的效用。
還有非常重要的一點,千萬不要錯誤的認為REA應用只是針對門戶方面。反之,應該將REA應用作為一種沒有傳統門戶服務的門戶去考慮。當前的門戶已經是作為企業信息的一個單一切入點,它們已經變成了一個太多太多信息所屯集的一個地方。REA應用作為門戶形式的展現在另一方面的作用在于不僅僅讓用戶能夠找到他們愿意去查找的信息,更能夠將一些不相干的信息數據混合到一起并給予用戶個性化的觀點認識——這就是REA應用所帶來的全新的以用戶自身意識為驅動的整合應用。當用戶共享這些特定的微小整合時,在本質上則是造就了整合效應的“長尾”發展。
REA應用如何填補IT業務中用戶驅動這一空缺
但是正如你可能已經意識到的,在目前典型的企業架構中本來是存在著一些組件可以用來支持REA應用的,而這些組件卻在傳統應用中失去蹤影。適當的服務粒度在整個企業架構應用中仍是一門藝術形式。將數據推向基于流覽器的應用并非普遍,而“虛擬化”服務和“混合式服務”更是前所未聞。
所有這些溝通都需要在符合底層服務所確定的可用服務政策的前提下安全實現,這也是對于各層次分布的用戶群而言一種優雅的度量準則。
我們千萬不能忽視,當前大部分的企業并沒有擁有一個屬于自己的企業級Ajax開發團隊,他們更多的只是在等待SOA項目能夠在生產中發揮效用。他們需要一些支持可視化開發的工具,一些調試工具,一些從IDE所得的“表和按紐”的窗口式開發的代碼重用工具。IDE還得是幫助他們創造一些輕量級代碼以及能夠在流覽器中優化執行的。
還有一些較小但同樣重要的問題,如何解決門戶網站的瀏覽器兼容問題,多語言支持問題,網頁內易讀性指引問題以及共存策略問題,等等。
如上種種則是為什么Ajax和SOA,當然你也可以如同本文中所稱的那樣稱他們為REA應用對于未來企業架構規劃和設計可能產生巨大影響的原因。從IT業務中REA應用型功能的最終用戶需求可以明確的看到,新一代的企業架構將會無可避免的以用戶驅動為前提。在未來的數年內,大部分的業務應用將作為REA應用的基礎存在,IT部門 則是有責任為這方面需求安排計劃。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的Ajax联手SOA打造企业级应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 贾跃亭再被执行2.4亿:总额超42亿!自
- 下一篇: step-by-step多文件WEB批量