国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

.NET vs J2EE――面對SOA的荒謬與誤解_.Net教程

2024-07-10 12:50:09
字體:
供稿:網(wǎng)友

推薦:ASP.NET多頻道網(wǎng)站架構(gòu)實現(xiàn)方法
各頻道分別位于不同的Web Project(具有獨立的二級域名),并將所有的業(yè)務(wù)邏輯以及數(shù)據(jù)訪問功能封裝成Class Library,所有頻道共用這個Class Library。下面詳細(xì)介紹實現(xiàn)方法。假設(shè)網(wǎng)站有三

·.Net與J2EE在金融行業(yè)愈來愈呈勢均力敵之勢,二者均宣稱提供了不同于對方的、聽起來很迷人的個性化應(yīng)用服務(wù)。

·理性的IT執(zhí)行官們已經(jīng)深刻的認(rèn)識到這樣的一個事實:無論是.Net還是J2EE,將來必將在SOA理念的應(yīng)用中占有各自的一席之地。

·Microsoft的.Net技術(shù)在今天的金融市場面前,顯得商機(jī)無限。

·從前,荒誕與誤解依然在.Net與J2EE平臺之間縈繞著:似乎沒有一個IT決策者能夠看透了這層迷霧,繼而在兩個平臺之間做出理性的決擇。

·今天,技術(shù)執(zhí)行官們已經(jīng)能夠很好的把握需求動機(jī),進(jìn)而在這兩種平臺架構(gòu)上做出正確的選擇。

涉及主題

SOA(Service-Oriented Architecture,面向服務(wù)的架構(gòu))已經(jīng)在全球業(yè)界日益成為核心的技術(shù)議題,那么實現(xiàn)SOA的技術(shù)標(biāo)準(zhǔn)問題則成為了嚴(yán)格關(guān)注的核心問題。在這個領(lǐng)域中,所有的IT經(jīng)理們將不得不面對一個古老的問題:J2EE和.Net,我們選擇誰?

我并不愿意試圖去回答“Yes or No”,在特定企業(yè)的特定應(yīng)用環(huán)境下的選擇,也不在討論范圍之內(nèi);但是本文的確廣泛搜集了當(dāng)今金融領(lǐng)域內(nèi)IT專家們的普遍性思維以及他們選擇技術(shù)架構(gòu)的方法論。IT經(jīng)理和軟件提供商將能從本文關(guān)于技術(shù)架構(gòu)的討論中發(fā)現(xiàn)一些令人詫異的結(jié)論,并且了解金融IT專家們在這場關(guān)于J2EE和.Net技術(shù)架構(gòu)爭議中的思維方法。因此,自從J2EE和.Net誕生以來,那些彌漫在你腦海中關(guān)于這兩個平臺的“荒謬論點和神話故事”很可能從此銷聲匿跡。

背景

上個世紀(jì)90年代,面向?qū)ο蟮木幊?OOP)引發(fā)了諸多的軟件開發(fā)標(biāo)準(zhǔn)。首當(dāng)其沖的是Microsoft的組件對象模型(COM),這是一個模塊(組件)化的技術(shù)開發(fā)架構(gòu),它源自于微軟早期的對象鏈接與嵌入技術(shù)(OLE)。稍微資深一點的技術(shù)人員應(yīng)該知道,今天互聯(lián)網(wǎng)應(yīng)用中最常見的ActiveX技術(shù)就是構(gòu)建在COM框架之上。

2002年微軟全面的用.Net從邏輯層上置換了COM,作為新的軟件開發(fā)框架(COM仍然被支持)。.Net技術(shù)的全面推進(jìn),統(tǒng)一了微軟的不同技術(shù)理念和平臺。作為一個戰(zhàn)略品牌,.Net為Web Service提供了原生的解決方案,并且成為提升不同應(yīng)用和系統(tǒng)之間互操作性的標(biāo)準(zhǔn)。

在1993年微軟引入COM之后,Sun公司于1995年推出了Java平臺。Java平臺由一套應(yīng)用開發(fā)語言(Java)、API和Java虛擬機(jī)(JVM)構(gòu)成,JVM允許用Java編寫的程序運行在不同的操作系統(tǒng)上。事實上,Sun引入Java的初衷是使得程序員能夠開發(fā)可移植的應(yīng)用程序,而不關(guān)心硬件和操作系統(tǒng)。在1999年末,Sun提出了Java平臺企業(yè)版(J2EE---Java to Enterprise Edition),該規(guī)范被應(yīng)用在主要的IT提供商以構(gòu)建穩(wěn)健的應(yīng)用系統(tǒng)框架,如IBM、Oracle和BEA,等等。

2003年Sun公司發(fā)布了J2EE 1.4版,除了增強(qiáng)更加穩(wěn)固的企業(yè)級應(yīng)用之外,還增加了Web Services支持。Sun把這個最為流行的版本稱為Java EE。

由于.Net和J2EE各自的初衷,使得二者之間的競爭常常摻雜著一些莫名其妙的荒誕。但是最近IT專家及IT決策者們關(guān)于這個問題的爭論卻更加注重于從業(yè)務(wù)實踐的客觀角度考察二者技術(shù)上的優(yōu)劣,因為這將有助于他們的正確選擇。

一些數(shù)據(jù)

幾乎每一個IT技術(shù)經(jīng)理都聽說過“.Net應(yīng)用的延展性匱乏或者J2EE架構(gòu)不易開發(fā)”的故事,的確,對這兩個平臺認(rèn)知上的誤解在業(yè)界普遍存在。

就在最近的兩年以前,許多的IT經(jīng)理們常常帶著個人偏見對其中某個平臺情有獨鐘,而刻意的排斥另一平臺。他們僅僅因為一個毫無依據(jù)的個人預(yù)想而拒絕部署某個平臺,或者其依據(jù)甚至是來源于雜志上的某篇技術(shù)文章。這種情況非常的普遍,因此圍繞著.Net和J2EE誰優(yōu)誰劣的討論相當(dāng)多。

我們承認(rèn).Net平臺的延展性會因為其特殊的基于Intel的硬件平臺而受到約束,但是我們也不應(yīng)該忽視.Net平臺誕生的那一天起,就有著比J2EE平臺更強(qiáng)的互操作性,并且允許開發(fā)者利用現(xiàn)有的.Net組件構(gòu)建更加復(fù)雜的解決方案,而不用花費太多的成本。

J2EE得到了大部分供應(yīng)商的支持,包括Sun,IBM等,所以J2EE的最大靈活性和可移植性不用置疑。另一方面,.Net平臺被微軟獨家全面支持,因此有著更為一致性的行為方式和可預(yù)見性。

令人遺憾的是,兩種技術(shù)平臺的第一手測試資料的匱乏總是使得人們的主觀臆想常常凌駕于技術(shù)本身的發(fā)展之上。 對.Net和J2EE認(rèn)識的模糊也導(dǎo)致了IT執(zhí)行官們在關(guān)鍵時刻的優(yōu)柔寡斷,甚至又回到了本世紀(jì)最初幾年的狀態(tài),那個時候的平臺分布如下所示。

Net 22%

J2EE 26%

不確定 15%

都沒有 30%

都有 7%

全球.NET and J2EE技術(shù)的跨行業(yè)調(diào)查(2002)

資料來源:Merrill Lynch & Co.

上表為2002年Merrill Lynch對全球100個CIO關(guān)于Web Service在兩種平臺的應(yīng)用分布數(shù)據(jù)。對100個CIO的問卷調(diào)查顯示出他們的公司缺乏清晰的Web Service應(yīng)用戰(zhàn)略。

下表顯示了2002年.Net和J2EE平臺在美國最大的100家銀行的應(yīng)用分布。

Net 15%

J2EE 36%

不確定 24%

都沒有 5%

都有 20%

上表為美國最大的100家銀行2002年的平臺分布

資料來源:全球金融咨詢及顧問公司TowerGroup的評估報告

幾年之后的今天,IT經(jīng)理們的決策漸漸變得更加理性,他們開始更多的基于業(yè)務(wù)需求和技術(shù)因素做出選擇。我們終于發(fā)現(xiàn),在同一家銀行常常同時存在著.Net和J2EE兩種技術(shù)架構(gòu),更為重要的是,Web services已經(jīng)成為這兩種平臺整合的共同橋梁。

回到本來

哪個平臺更加適合新的應(yīng)用?或者我們應(yīng)該升級到那個平臺?必須做出決定。在過去的6年中,.Net和J2EE平臺在全球范圍里都未能保持著對對方的絕對優(yōu)勢,他們各自有著自己的特色。

2006年,全球著名的金融顧問咨詢公司TowerGroup在與金融行業(yè)CIO和IT架構(gòu)師們的一次研討中,發(fā)現(xiàn)他們對于這兩個平臺的選擇有著更為清晰的目標(biāo)和期望值,這的確是一個消除誤解的好機(jī)會。

這次討論中至少有兩點值得我們注意:企業(yè)似乎并沒有固有的傾向性;也沒有明確的跡象表明那一個平臺更加具有延展性和可靠性。

(1)對于.Net和J2EE并沒有特別的偏好

經(jīng)過廣泛的調(diào)查,TowerGroup公司發(fā)現(xiàn),企業(yè)從前對某一個技術(shù)平臺的偏好完全是基于個人的愛好和浮躁的“一窩蜂”心態(tài)。這種態(tài)勢目前漸漸變得理性,當(dāng)然不排除仍然有某些IT經(jīng)理存在著個人的嗜好。

但是企業(yè)對于Web Service和SOA的強(qiáng)烈關(guān)注,則意味著對于某種平臺的個人嗜好不再成為平臺選型的可接受的依據(jù)。

(2)沒有證據(jù)表明那一個平臺更具延展性和可靠性

雖然有許多關(guān)于.Net和J2EE平臺性能的研究報告,但是這些報告大部分要么來自于Microsoft,要么來自于J2EE的廠商,使得他們的公平性令人懷疑。也許他們的研究結(jié)果是真實的,但是這種供應(yīng)商自身的性能測試本身就沖淡了研究結(jié)果的價值。另外,設(shè)計好的Test Case具有很大的復(fù)雜性,至多只能有一到兩個比較全面的測試用例,其他的用例則顯得十分的蒼白與簡單,極大地限制了測試范圍的適應(yīng)性,從而與實際應(yīng)用場景距離甚遠(yuǎn)。

差異的必然性

雖然對于.Net和J2EE平臺的個人偏好顯得毫無理由,但是IT經(jīng)理們承認(rèn)這樣的一個事實:兩個平臺的差異性常常成為他們在開發(fā)、選型和維護(hù)升級時的重要參考依據(jù)。

(1)在硬件和操作系統(tǒng)之間的可移植性

.Net和J2EE之間最大的差異性成為金融企業(yè)做技術(shù)選型的重要依據(jù):在數(shù)據(jù)中心的數(shù)百臺服務(wù)器之間移植應(yīng)用的能力。由于J2EE原本就是一套跨平臺應(yīng)用的規(guī)范,所以對于那些需要部署到不同服務(wù)器上的應(yīng)用,J2EE似乎是更好的選擇。

但是,J2EE的上述優(yōu)勢卻遭到兩個因素的嚴(yán)重挑戰(zhàn)。

首先,沒有兩個廠家的J2EE規(guī)范是完全一致的。這種在部署、存儲和安全性規(guī)范上的微妙差別意味著在兩個平臺之間的應(yīng)用移植需要因為這種差異性的存在而付出代價。因為對于很多應(yīng)用而言,應(yīng)用的可移植性遠(yuǎn)比可維護(hù)性還要重要。

其次,銀行從前為了克服應(yīng)用能力的瓶頸,總是存在著升級到具備高端處理能力服務(wù)器的需求。但是隨著基于Windows-Intel的機(jī)器處理能力越來越強(qiáng)大,這種需求被最小化。Unisys公司在6年前就推出了基于windows的主機(jī)(Mainframe),IBM也推出了64位的windows兼容的系統(tǒng),而CPU層疊技術(shù)也允許基于SMP(對稱多處理)的Windows 服務(wù)器系統(tǒng)擁有四個CPU。進(jìn)一步,.Net操作系統(tǒng)(Vista和Longhorn)將進(jìn)入高端處理市場,尤其是網(wǎng)絡(luò)計算機(jī)的出現(xiàn),使得大量的單機(jī)分布式處理能力足以勝任目前大型機(jī)的工作負(fù)荷。

(2)易開發(fā)性和可拆卸性

.NET的易用性、效率和成本均領(lǐng)先于J2EE。使用.Net,IT專家們比使用J2EE更加不用關(guān)心底層細(xì)節(jié)。因此能快速捕捉商機(jī),成本也更低。

.Net比J2EE靈活得多,它允許開發(fā)者使用多種語言在同一個平臺上開發(fā),因而能夠利用廣泛的開發(fā)資源。總而言之,使得開發(fā)團(tuán)隊的運作更加高效。

重要的是,.Net的可用資源相對較多。對于金融行業(yè)而言,Windows平臺占據(jù)絕對數(shù)量,而且?guī)缀跛械腎SV(獨立軟件供應(yīng)商)都支持Windows平臺。

另外,IT執(zhí)行官們大多數(shù)只關(guān)心解決方案,而并不關(guān)心平臺本身。他們并不要求ISV幫助他們從.Net平臺移植到J2EE平臺,因此金融行業(yè)常常維護(hù)著不同的應(yīng)用環(huán)境。

兩個因素也嚴(yán)重挑戰(zhàn)了.Net平臺易用、高效和低成本的優(yōu)勢(雖然.Net程序員相對于Java程序員而言,總是更快更高效)。

參與TowerGroup公司調(diào)查的IT執(zhí)行官們透露了這樣的信息,對于一個大型的項目而言,J2EE和.Net之間的TCO(總的擁有成本:包括資源、時間和財力)僅僅相差不到10%。同時,很多IT經(jīng)理認(rèn)為J2EE更適合性能調(diào)優(yōu),這兩個因素嚴(yán)重削弱了.Net的優(yōu)勢。

(3)企業(yè)內(nèi)部可用的資源

影響.Net和J2EE選型的最大因素來自企業(yè)內(nèi)部的可用資源。

如果大部分的程序員擅長J2EE,那么企業(yè)會很自然的選擇J2EE平臺,而免除了再次培訓(xùn)的開銷;相反,企業(yè)會選擇.Net平臺。

TowerGroup公司的調(diào)查認(rèn)為,將來純代碼開發(fā)人員將會漸漸的轉(zhuǎn)向Windows平臺,因為.Net支持多語言開發(fā),并且遠(yuǎn)離系統(tǒng)底層。但是,J2EE將在那些關(guān)注性能調(diào)節(jié)和特定領(lǐng)域的定制開發(fā)的企業(yè)里繼續(xù)發(fā)展。

基于這樣的發(fā)現(xiàn),TowerGroup對今天的.Net和J2EE的市場作了評估,結(jié)果如圖3所示。

Net 11%

J2EE 17%

不確定 15%

都沒有 2%

都有 55%

上表為美國金融企業(yè)的平臺分布

資料來源:TowerGroup評估報告

雖然前100家銀行中很多繼續(xù)支持其中一種平臺,但是大部分的銀行開始實施SOA架構(gòu),同時維護(hù)兩個平臺。

(4)更遠(yuǎn)的商機(jī)

無論銀行的IT機(jī)構(gòu)對這兩個平臺的看法如何,但是接受TowerGroup調(diào)查的IT執(zhí)行官們一致認(rèn)為,J2EE平臺已經(jīng)大范圍的被廣泛采納。在這場賽跑中,J2EE領(lǐng)先于.Net,而這種領(lǐng)先的優(yōu)勢會隨著時間的推移而不斷的弱化。好幾個IT經(jīng)理同時也認(rèn)為,J2EE比.Net的生命周期更長,平臺更加成熟,技術(shù)專家更多。

在TowerGroup公司最近的一次對歐洲銀行IT經(jīng)理的調(diào)查中,參加者被問到“是否大量部署.Net平臺”時,居然沒有一個人抬頭或者舉手;但是所有人都證實了他們部署了J2EE平臺。無論如何,看來這種領(lǐng)先的趨勢很難改變。

不過,在與他們的討論過程中,有一點共識很明顯:微軟的確有機(jī)會提升.Net在銀行業(yè)的應(yīng)用市場,填補(bǔ)太多的空白。

(5)桌面應(yīng)用和企業(yè)級應(yīng)用之間的差異

大多數(shù)人認(rèn)為,在.Net和J2EE之間最為顯著的區(qū)別之一,就是.Net平臺常常被部署在客戶端,而J2EE平臺(如WebLogic/WebSphere/JBoss/TomCat)則更多的被部署在服務(wù)器端。事實上這是一個不倫不類的誤解,.Net是一種技術(shù)框架,不是一種產(chǎn)品,更不是Windows客戶端;而J2EE只是一種協(xié)議,或者說是遵從J2EE協(xié)議的應(yīng)用架構(gòu)。

從某種程度上講,人們對.Net平臺的認(rèn)知誤解也誕生了一個笑話:因為微軟把自己的產(chǎn)品觸角延伸到了企業(yè)應(yīng)用的每個角落,從低端的桌面應(yīng)用到高端的企業(yè)應(yīng)用,幾乎都看到了.Net平臺的身影;那么那些IT執(zhí)行官們免不了會把他們在低端產(chǎn)品上的感受推而廣之到其他的微軟高端平臺上。當(dāng)一個IT經(jīng)理在忙碌了一天之后回答家里,打開電腦卻還要耗費好幾個小時去面對PC機(jī)上的病毒干擾,那么Windows平臺將會給他們留下“深刻的印象”。事實上微軟的高端和低端產(chǎn)品(如Win2k Pro/windows XP/Win2K Server與 Vista/Windows Server 2003/Longhorn)不可同日而語,但是這種主觀上的聯(lián)系則很難避免。

也許微軟需要有不同的產(chǎn)品以分別面對家庭應(yīng)用環(huán)境和強(qiáng)健的、基于關(guān)鍵業(yè)務(wù)的商業(yè)平臺。

(6)強(qiáng)力宣傳與培訓(xùn)

許多銀行對.Net平臺在企業(yè)應(yīng)用上的技術(shù)一概無知,這種對.Net平臺認(rèn)知的匱乏延伸到了培訓(xùn)領(lǐng)域。一些金融機(jī)構(gòu)抱怨微軟從來沒有提供過如何利用.Net架構(gòu)滿足業(yè)務(wù)需求的培訓(xùn)。如果這種抱怨是真實的,那么微軟也許只剩下對金融應(yīng)用說“拜拜”的機(jī)會了。

鑒于這種來自用戶的抱怨,微軟需要在金融行業(yè)提供與其他競爭對手同樣的培訓(xùn)。

(7)不要單純的只提.Net技術(shù)

總之,微軟應(yīng)該認(rèn)識到那些試圖購買.Net平臺的技術(shù)專家都是些老謀深算的高手,如果微軟一味的單純化.Net技術(shù),則會讓這些“高手”們感覺這簡直就是一個別具一格的玩具,從而對.Net技術(shù)構(gòu)建強(qiáng)大解決方案的能力表示懷疑。

每當(dāng)那些滿腦子都是SOA的架構(gòu)師們在回答關(guān)于.Net平臺是否適合他們的應(yīng)用需求時,總是這么回答:“哦,用到了,因為.Net已經(jīng)被嵌入在微軟的產(chǎn)品中了”。

在較早的調(diào)查中,我們看到J2EE受歡迎的一個原因就是它的彈性。如果.Net需要在金融領(lǐng)域取得同樣的成功,勢必需要和它的競爭對手一樣的增強(qiáng)彈性和可配置特性。

(8)J2EE需要簡化

當(dāng).Net這匹黑馬開始活躍在企業(yè)級應(yīng)用,并且愈來愈讓決策者們刮目相看的時候,迫使J2EE平臺必須在既有的高端應(yīng)用上有所作為。

Sun公司正在努力的簡化J2EE開發(fā)規(guī)范,使得Java開發(fā)者們也享有.Net開發(fā)者的快捷和愉悅。一個典型的例子是Java Studio Creator的出現(xiàn),它允許開發(fā)者們采用Drag & Drop的方式拖放組件以產(chǎn)生一個Web應(yīng)用系統(tǒng)。開源組織也在極力的考慮如何簡化J2EE的開發(fā),使得采用J2EE的開發(fā)能夠更加快速和廉價。

另外,被移植到Java虛擬機(jī)上的程序語言的數(shù)量也在增加,現(xiàn)在不僅僅是Java語言才能運行在JVM上了。所以.Net在這方面的優(yōu)勢開始削弱。

總結(jié)

.Net vs. J2EE不再顯得那么不可琢磨,今天的IT執(zhí)行官們已經(jīng)能夠使用更客觀的標(biāo)準(zhǔn)來決定使用那一種平臺,以及在什么時候使用它。尤其在SOA的時代,技術(shù)架構(gòu)師們常常樂于接受這兩個平臺的并存,并且采用Web Service互聯(lián)互通。

今天,.Net技術(shù)愈來愈占據(jù)了顯著的地位。雖然在成熟度等優(yōu)勢上與J2EE還有一段距離,不過微軟可以采取策略迅速彌補(bǔ)這個鴻溝。

J2EE也有機(jī)會“跟上”.Net平臺易用和高效的步伐,J2EE的信徒們正在努力。

微軟在高端市場的受挫,不是因為技術(shù),而是因為其一貫的市場策略,因為.Net本身就是企業(yè)級的平臺技術(shù)。

最終,.Net和J2EE技術(shù)都在朝著相互融合的態(tài)勢發(fā)展,Web Service、SOA、開發(fā)速度、更低的成本和柔性是它們必然的選擇。

將來,在這場競爭中幸免遇難的唯一途徑是:基于SOA的“.Net 與 J2EE”————而不是“.Net vs. J2EE”。

分享:ASP.NET 2.0高級數(shù)據(jù)處理之?dāng)?shù)據(jù)綁定
在前面的"模板中的數(shù)據(jù)綁定"部分中我們論述過,ASP.NET包含了一種宣告式的數(shù)據(jù)綁定語法,用于在數(shù)據(jù)綁定模板中把數(shù)據(jù)源字段與控件的屬性相關(guān)聯(lián)。你也可以在代碼中使用<%# ... >語法

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 玛曲县| 嘉义市| 株洲县| 海宁市| 民丰县| 大同市| 桓台县| 鹰潭市| 株洲市| 余庆县| 长沙市| 炉霍县| 兴业县| 安陆市| 定襄县| 荃湾区| 新津县| 体育| 象州县| 卫辉市| 河源市| 阿克苏市| 云林县| 漾濞| 邢台县| 志丹县| 宁河县| 聂拉木县| 台湾省| 体育| 尼木县| 花垣县| 平舆县| 丹江口市| 南部县| 定远县| 合江县| 红安县| 商河县| 仲巴县| 砚山县|