• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 如何建立Web服務

    發表于:2007-06-13來源:作者:點擊數: 標簽:
    一家公司把業務流程和應用功能分解成服務的能力,將決定它能夠獲得什么樣的靈活性和可重用性,最終決定 SOA 項目的成功程度。 丹麥銀行(Danske Bank AS)在構建SOA方面的開創性工作已到了非常深入的階段,現在,它的大型機和應用 服務器 發布出來的服務有10

    一家公司把業務流程和應用功能分解成服務的能力,將決定它能夠獲得什么樣的靈活性和可重用性,最終決定SOA項目的成功程度。

    丹麥銀行(Danske Bank AS)在構建SOA方面的開創性工作已到了非常深入的階段,現在,它的大型機和應用服務器發布出來的服務有1000多項。但這家總部設在哥本哈根的銀行卻發現自己落入了讓人沮喪的困境。這家銀行的首席架構師Claus Torp說: “服務太多了,我們找不到它們?!?

    這個問題有可能讓SOA的主要優點之一 重用化為泡影。不得已,丹麥銀行開始著手改動服務的概念,改進服務中心庫,并制訂了執行最佳實踐的管理流程。結果把服務數量精簡至140項,這大大提高了可管理性。

    如果你深入分析SOA方面的幾個開創者,就會發現丹麥銀行所采取的措施是公司能夠重復使用代碼、提高開發應用的速度和效率、并且最終節省資金的關鍵所在。但這并非易事,同是,實施的先后順序也很重要。如,Sun公司曾構建了注冊中心(registry),還成立了一個架構審查委員會。但IT部門只是現在才回過頭去,對Sun的80到100項Web服務進行比較認真的審查及分析。

    Sun的IT主管Karen Casella建議,開始踏上SOA之路的公司應當首先分析業務需求,然后確認需要哪些Web服務。她說: “我們吃過苦頭才明白了這個道理。我們還沒有完全弄清楚實施SOA需要什么,就建立了一部分基礎設施?!?

    定義服務是關鍵

    公司要弄清楚哪些業務流程可以轉化成服務、認真設計及定義服務,并且學會區別服務和組件。

    丹麥銀行開始構建標準接口以發布遺留程序時,它把服務定義為“一項功能”。如今它在較高的層面來描述服務: 即從邏輯上分組的功能和數據,譬如“顧客”或者“賬戶”。該銀行的140項服務每一個都由大約10個“操作”或者組件組成,這些實際上就是粒度更細的服務。目前共有超過1365個操作。丹麥銀行估計最終會有250項服務。

    Torp說,一家公司把業務流程和應用功能分解成服務的能力將決定它能夠獲得什么樣的靈活性和可重用性。

    丹麥銀行利用建模工具來設計功能模塊和業務流程的邏輯圖(Logical Map)。然后,它把業務流程與服務進行匹配,確保自己解決了所要解決的問題。

    Torp說: “大量正向服務的開發工作就是為了確保,你可以在同樣的服務基本模塊上運行不同的業務流程。如果你想取得良好效果,就要確保同樣的功能只有一個地方在實現?!?

    首席技術官Robert Wiseman說,Cendant公司的旅行分銷服務部門為了確定服務和服務組件的最佳粒度花了相當長的時間。最終確定服務是可以借助名稱為Rosetta Stone的業務領域模型(business domain model)供外部調用的構件,而服務組件如日志功能只是在內部調用。

    所以“預訂酒店”這項服務可能會調用幾個低層服務,譬如該公司為顧客提供的經度/緯度“目的地查找器”。但Cendant的貨幣兌換器卻是個組件,因為目前它并不提供給顧客使用。

    Wiseman說,Cendant期望正在開展的一個項目能夠從整體應用抽取組件以獲得巨大回報。比如,旅客姓名記錄(PNR)是一個基本的數據單元,供預訂引擎和全球分銷系統(如Cendant的Galileo)使用。通過把“Super PNR”作為一項服務來提供,IT部門就沒有必要維護在不同應用里面的六七個PNR。哈特福德金融服務集團公司在過去三年里構建了一批Web服務及其他服務,但直到一年半前才開始在整個企業開展SOA方面的工作。

    這家總部設在康涅狄格州的保險公司負責應用基礎設施交付的經理Benjamin Moreland說,非常適合成為企業服務的是兩個或者更多個應用需要的功能?!暗皇敲宽椆δ芏紤敵蔀榉?,”Moreland警告。他特別指出,發布服務可能會給性能帶來影響。

    建立注冊中心

    廠商們也許期望基于通用標準發現集成協議(UDDI)標準的因特網注冊中心能夠迅速流行起來。但SOA的早期采用者更關心的卻是內部注冊中心。

    不過,這并不是說UDDI因此沒有。UDDI對哈特福德公司來說實在太重要了,結果它選擇的注冊中心就是基于符合UDDI 3.0的產品(工作人員不愿透露產品名稱,這是由于公司政策規定不得為廠商做宣傳)。注冊中心里面包含描述服務的元數據以及通過特定傳輸協議與服務相連的機制。

    但UDDI注冊中心并不適合每家公司。哈特福德各個部門繼續為各自創建的一些服務維護本地注冊中心,原因是哈特福德對哪些服務進入企業注冊中心有所選擇。

    Moreland說: “我們不想什么服務都放在里面。我們覺得,放在企業UDDI里面的應當是能為我們在整個企業帶來優勢和靈活性的服務?!?

    普羅維登斯醫療系統(Providence Health System)使用Infravio公司的管理框架管理其服務中心庫。

    讓該公司原先持懷疑態度的人士大跌眼鏡的是,開發人員居然可以重復使用服務,原因是他們能夠找到定義接口的Web服務描述語言(WSDL)文件。普羅維登斯醫療系統的研究開發主管Michael Reagin說: “我們通常把這稱之為‘像Google那樣搜索’Web服務。如果要稍加改動,他們在幾小時內就可以完成,然后就可以重復使用服務。這樣,員工的工作效率提高了。大家都很高興?!比缃?,普羅維登斯醫療系統比較關注的問題是,如何從業務角度來管理其越來越多的Web服務及SOA框架。該公司有近50項組合式服務,每一項都由1到20項粒度更細的子服務組成。

    找不到適合自身需要的注冊中心的早期采用者只好自行構建。丹麥銀行為來自其大型機及基于J2EE和微軟.Net的應用服務器的諸多組件維護不同中心庫。

    CIO Peter Schleidt說,這些中心庫能夠彼此復制服務,從而形成單一的邏輯中心庫——這實際上是UDDI注冊中心的超集,并增加了負載均衡等功能的業務操作參數。服務集成商的工作人員可以通過HTTP或者更有效的專有協議使用簡單對象訪問協議(SOAP),動態地選擇最有效的方式來調用服務。

    丹麥銀行還為其服務及相應接口提供了一個結構化中心庫。該中心庫還存放了有關其功能模型和流程模型之間相互關系的信息。甚至還設有中心庫管理人員,那樣開發人員可以隨時向他求助。但直到一年前才開始使用中心庫,“這比我們預定的要晚得多,”Schleidt如是說。

    Web服務的管理必不可少

    遇到緊要關頭,管理部門可以幫助公司堅持奉行SOA的原則。丹麥銀行分管產品、流程和IT開發的18個業務部門均設有指導委員會。但如果業務經理想急于打敗對手,一旦需要比較長的時間才能完成,他們有時候會忍不住拋棄通用的SOA方法。Schleidt說: “你需要一個管理流程,好應對上面這樣的情形。我們總是有時間在事后進行改變,那為什么不改變做法,一開始就把事件做好呢?”這種一勞永逸的方法會產生長遠影響。Torp說,丹麥銀行現在有兩個個性化引擎、四項交互式顧客溝通服務以及四個支付處理應用。

    幾年前,哈特福德成立了一個中心部門,名為Property and Casualty Architects Collective,負責監管如何在整個企業采用SOA。該部門組建了一個參考架構,概述可以在特定環境下使用的推薦的方法、實踐及產品。

    哈特福德的企業架構師James McGovern說: “其實質思想就是交流架構方面的想法、重復利用思維過程。工作的艱辛就體現在這方面,但正是這方面體現了價值所在?!?

    負責應用基礎設施交付的另一部門負責選擇及實施管理平臺、業務流程引擎和UDDI注冊中心,并且確保用來描述服務接口的WSDL文件符合標準。沒有參與特定項目的架構師負責檢查項目的應用設計,確保服務沒有重復。

    在Cendant公司,項目經理負有這項責任??梢酝ㄟ^Rosetta Stone業務領域模型當中基于XML的層,訪問服務名稱和輸入及輸出字段。一個部門專門負責更新業務領域模型。Wiseman說: “這就是我們控制重復使用的方法?!?

    如果業務領域所有者發現某項服務早已在注冊中心里面,服務會被打上標記,表明它適合重復使用?;旧嫌蒊T經理組成的SOA管理委員會隨后接過工作。開發人員用不著操心。

    Wiseman說: “編程人員是最不適合做出決策的人。他們總是希望編寫新的東西?!?

    (清水譯自《Computerworld》)

    鏈接

    針對Web服務的三種攻擊方式

    Web服務的共享式設計給企業與其合作伙伴之間交換數據和應用帶來了極大的方便,同時也帶來了安全隱患。黑客已經找到辦法在XML代碼中插入Tag,而程序仍可以像一個正常的一樣運行。

    “XML標準還在一點點完善,其中還存在一些我們沒有注意到的漏洞?!盕orrester分析師Rany Heffner說。

    根據專家們的分析,目前黑客有三種攻擊Web服務和XML的方式:

    ● 偽造身份攻擊,黑客偽裝成合法用戶獲得Web服務的訪問權;

    ● 惡意內容攻擊,入侵者強制Web服務完成非法動作;

    ● 運行攻擊,黑客通過XML消息占用服務器資源。

    盡管黑客的攻擊方法我們已經知道,但目前要防范對Web服務的攻擊還是非常困難的,因為這涉及很多方面,如服務器、消息和應用等。不過,企業首要任務是保證Web服務器的安全,接下來才是決定哪些業務合作伙伴和雇員有權訪問它們、各種人員分別采用什么方式和Web服務連接、使用什么認證方式等。

    軍火制造商Northrop Grumman公司就親身體味到了Web服務的安全困擾。Web服務是Myngc.com門戶的主要構件,原本計劃花6個月完成,但由于Web服務用戶驗證方面的原因,這個項目最后用了18個月才完成。

    “當你希望把應用展示給你的合作伙伴時,安全問題就會凸現出來?!?Northrop Grumma副總裁Raphael Holder說,他的企業最關注的問題是,如何保證遠程安全地訪問Web服務應用,保證所有訪問門戶的用戶都是經過授權的。

    為了保證數據的安全,Northrop Grumman部署了RSA公司的公鑰系統,給所有訪問門戶的被認證的用戶發放Token,這些Token也可以發布給那些需要各種不同訪問能力的合作伙伴和客戶。Holder說,該門戶現在有12萬用戶。

    雖然已經采用了這些技術,但Holder坦言,目前使用Web服務仍然存在風險?!拔覀円恢毙⌒牡毓芾碚哌@個門戶,訪問授權也僅限于我們非常信任的合作伙伴?!彼f。

    與Northrop Grumman一樣,旅游公司Wyndham也一直在探討如何提高Web服務的安全性。Wyndham的統計表明,從2003年5月到2004年5月間的一年時間里,該公司被入侵達950萬次之多,這其中包括黑客攻擊、Web網站宕機和病毒。

    公司高級副總裁和CTO Mark Hedley介紹說,有幾種方法可以保證Web服務的安全。其中一個最常用的辦法是在傳輸層保證應用安全,具體方法是使用雙向的SSL連接或者專門的VPN連接。SSL提供了多種驗證方法,如客戶端驗證等。另一個辦法對于需與多個合作伙伴連接更合適,就是使用XML安全網關。有一些可以用來保護XML和Web服務免遭攻擊網絡設備,它們提供XML加密功能、數字簽名、訪問控制以及其他一些功能。業內不少人預計新的標準也將提高Web服務的安全性。

    Heffner認為,由于新標準和新產品的出現,將會改善Web服務的安全性?!癤ML安全網關為防止黑客攻擊提供了更好的解決方案,它比一年前的方法要有效得多?!彼f。

    但是安全問題不能成為實現Web服務的障礙,Heffner說,“你現在可能在安全方面要比3年前投入更多,我們的態度是,如果現在Web服務還有商業價值,我們就應該支持!”

    (責任編輯:銘銘)

    原文轉自:http://www.kjueaiud.com

    ...
    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>