雖然SOA現(xiàn)在發(fā)展的如火如荼,但還是處在不斷的發(fā)展中,還是存在很多有待改進(jìn)的地方。其缺點(diǎn)目前來(lái)說(shuō),主要表現(xiàn)在以下幾個(gè)方面:可靠性,安全性,性能。在電子商務(wù)的應(yīng)用中,有一個(gè)很重要的可靠性,就是不可否認(rèn)性,信息確保發(fā)送且僅且一次以及事務(wù)的回滾,這點(diǎn)是必須得到滿足的,但是,目前來(lái)說(shuō),SOA架構(gòu)還沒(méi)有為此做好準(zhǔn)備。至于安全性我們?cè)谙旅鏁?huì)做詳細(xì)的分析。至于性能問(wèn)題,不可否認(rèn),這個(gè)SOA架構(gòu)最遭人詬病的地方。SOA架構(gòu)的性能稍低,主要是因?yàn)镾OA的分布性質(zhì)和web服務(wù)協(xié)議的開(kāi)銷(xiāo)。任何分布式系統(tǒng)的執(zhí)行速度都不如獨(dú)立式系統(tǒng),因?yàn)檫@里面有網(wǎng)絡(luò)的制約因素。所以,在對(duì)那些實(shí)時(shí)性要求較高的地方,在構(gòu)建SOA架構(gòu)之前,就應(yīng)該先搞清楚它的適用范圍了。
這里之所以特意把安全問(wèn)題拿出來(lái)作為一個(gè)獨(dú)立的段落,是因?yàn)榘踩珕?wèn)題對(duì)一個(gè)系統(tǒng)來(lái)說(shuō)應(yīng)該受到足夠的重視。如果你沒(méi)有在在它上面付出應(yīng)有的努力,也許,它就會(huì)成為導(dǎo)致SOA架構(gòu)在實(shí)施的時(shí)候失敗的主要原因。
由于SOA架構(gòu)的松散耦合性,當(dāng)其向客戶(hù)提供服務(wù)時(shí),任何形式的網(wǎng)絡(luò)都能獲取IT應(yīng)用程序和系統(tǒng)時(shí),人們會(huì)本能的擔(dān)心非正當(dāng)人群也能訪問(wèn)程序和系統(tǒng)?;ヂ?lián)網(wǎng)對(duì)世界開(kāi)放,從而更加劇了人們的這一擔(dān)憂。通常我們企業(yè)都知道保護(hù)網(wǎng)絡(luò)接入,認(rèn)證用戶(hù)以及運(yùn)行訪問(wèn)控制列表。假設(shè)所采用的SOA基礎(chǔ)架構(gòu)具有實(shí)施安全粒度的全力,這就使得有效控制訪問(wèn)方式成為可能。但是,如果保證數(shù)據(jù)在網(wǎng)絡(luò)中輸送的隱秘性又是一個(gè)難題,要達(dá)到一定的保護(hù)水平,可以采用各種加密標(biāo)準(zhǔn)。然而不幸的是,市場(chǎng)并沒(méi)有很好的處理整個(gè)SOA安全事件,簡(jiǎn)單的看很多與安全相關(guān)的web服務(wù)“標(biāo)準(zhǔn)”草案都是尚未成熟,考慮欠佳,并不真正的實(shí)用。
那么一般來(lái)說(shuō),我們針對(duì)SOA的安全能做些什么呢?需要的SOA網(wǎng)絡(luò)安全策略和許多的基于web的應(yīng)用程序是采用相同的策略的,他們采用的方式都可以歸結(jié)為創(chuàng)建一個(gè)虛擬局域網(wǎng)來(lái)保證服務(wù)器和客戶(hù)端達(dá)到交互,使用數(shù)字證書(shū)來(lái)建立 SSL(secure socket layer)保護(hù)或者HTTPS?;蛘咄ㄟ^(guò)在軟件或者硬件上部署防火墻基礎(chǔ)架構(gòu)來(lái)檢測(cè)通過(guò)SOA進(jìn)來(lái)的可疑請(qǐng)求。但是這只是構(gòu)建一個(gè)安全的通道,我們依舊不能保證數(shù)據(jù)不被竊取,所以,為了確保數(shù)據(jù)的安全性,我們需要對(duì)數(shù)據(jù)加密。針對(duì)SOA架構(gòu)來(lái),說(shuō),就是對(duì)原始的XML數(shù)據(jù)進(jìn)行保護(hù)了,通常,我們采用XML加密和XML簽名來(lái)把安全加入到基于XML的數(shù)據(jù)中去。XML加密可以讓數(shù)據(jù)能夠在請(qǐng)求者和晌應(yīng)者之間以一種模糊的方式傳輸,這樣,即使數(shù)據(jù)受到竊取,信息也很難讀懂。而XML簽名,則是用來(lái)進(jìn)行XML文檔的篡改檢測(cè)的。它可以保證所傳輸?shù)臄?shù)據(jù)沒(méi)有收到篡改或者狀態(tài)沒(méi)有發(fā)生改變。至于具體的操作方式,限于篇幅。就不在這里詳細(xì)講解了。
盡管SOA產(chǎn)品和平臺(tái)已經(jīng)發(fā)展有一段時(shí)間了。但這僅僅意味著開(kāi)始。相信SOA架構(gòu)在以后的一段時(shí)間內(nèi),仍然會(huì)有巨大的發(fā)展。但畢竟SOA架構(gòu)也還是存在一些問(wèn)題,所以,對(duì)于用戶(hù)而言,究竟該選擇什么平臺(tái)或者什么產(chǎn)品,的確是應(yīng)該三思而行。