(1)多系統整合和系統延展性 ?
? 跨平臺的特性一直是J2EE ? 的最大特點,它通過Java ? 的虛擬機技術屏蔽了底層操作系統的細節。從而實現了所編寫的代碼可以在Windows ? 平臺上使用,也能夠在Unix ? 平臺上使用。即所謂“一次編寫,處處可用”。在J2EE ? 規范里面又通過JDBC、JNDI ? 等技術屏蔽了諸如數據庫、目錄訪問等網絡細節。可以這么說,目前用J2EE ? 技術實現的企業級應用可以運行在大機、Unix、windows、linux等各種操作系統上,后臺可以連接Oracle、DB2、Informix ? 等等數據庫,并且效率方面沒有太多的區別。在各系統連接方面,J2EE ? 也提出了很多很好的解決方案,例如J2CA——J2EE ? 聯接器體系結構,就是J2EE ? 規范規定的如何使用Java。 ?
? 技術與所謂遺留系統如ERP、CRM ? 等的連接方法。當然J2EE ? 現在也提倡使用Web ? Service ? 等技術來進行系統互聯。總體而言,J2EE ? 技術是一套標準,它由諸多公司一起支持,所以技術的通用性和標準性比較高,目前基本上成為企業級解決方案的事實標準。 ?
? .Net ? 從本質上來講不是一套標準,而是微軟一系列產品的集合,所以,選擇.Net ? 技術,基本上就選定了微軟平臺。也就是說,操作系統只能使用Windows,甚至低層硬件只能選擇Intel ? 的系列芯片。而不能在大機、Unix ? 以及Linux ? 等系統上使用。在數據庫方面,.Net ? 在自身的Microsoft ? SQL ? Server ? 上也會比其他數據庫運行得好。在系統互聯方面,.Net ? 提倡使用Web ? Service,這個技術目前還比較新,還沒有太多的成熟可靠的解決方案。 ?
? 總之,在多系統整合和系統延展性方面,基本上是J2EE ? 的特點,目前而言,.Net ? 技術還很難望其項背。 ?
? (2)I/O ? 處理和線程調度 ?
? 在這個方面,從應用的層面看,兩者都能夠達到企業級應用的需求。但是I/O處理和線程調度從本質上來講應該由底層硬件和操作系統來解決。J2EE ? 支持眾多的硬件和操作系統,單從這點來講,都比.Net ? 技術有優勢得多。別的不說,大型計算機的I/O ? 處理能力和線程調度能力是其他任何機種所無法企及的。而大機上目前只能運行J2EE,不能運行.Net。光這一點,就說明了在這個方面J2EE ? 優于.Net ? 技術。 ?
? (3)穩定性和安全性 ?
? 穩定性和安全性方面可以用很多方式去實現和補償,問題的關鍵是看投入的成本和維護的費用是多少,昂貴的資金投入顯然是不合適的。所以,我們去討論那些軟硬件的補償方法沒有太多的意義,我們把討論集中在操作系統和硬件芯片級別的比較。 ?
? .Net ? 技術進軍高端應用市場,靠的是Windows ? Data ? Center ? 之類的操作系統,靠的是Intel ? 的安騰芯片。Windows ? 操作系統的穩定性和安全性與Unix ? 乃至S/390等操作系統相比較,其結果不言而喻。Windows ? 是最通用的桌面系統,也是最大的病毒溫床。眾多的病毒困擾著Windows ? 的使用者。目前,利用Microsoft ? ? SQL ? Server ? 的漏洞的病毒正在肆虐就是一個明證。而Unix、Linux ? 和大型機操作系統的病毒就較少,安全級別也比Windows ? 高。 ?
? 再來看看.Net ? 所能夠運行的硬件平臺,一般而言只有Intel ? 公司的芯片,Intel公司的志強芯片一般我們認為它只是個部門級別服務器的芯片。Intel ? 公司仰仗進入高端服務器市場的是Intel ? 公司與HP ? 公司共同研發的64 ? 位芯片安騰。安騰系列目前最新的是安騰2。盡管在其發布會上英特爾展示了安騰2 ? 處理器與Sun ? 公司UltraSPARCⅢ的性能對比資料,但英特爾并沒有展示更多的基于系統的安全性、穩定性及兼容性能的對比評測,而這些是高端應用的關鍵所在,而安騰2與現有應用軟件的兼容則更是不甚明了的二進制兼容。因此,我們可以說安騰2要在高端市場占領一定的地位還需要一些時日和改進。 ?
? 所以,.Net ? 技術在高端的企業級應用市場還比較缺乏案例支持。 ?
? (4)產品成熟度等其他因素 ?
? J2EE ? 在1999 ? 年形成了其成熟的架構,并且到今天已經有相當成熟的經過檢驗的企業應用系統。而.Net ? 究其淵源是源自微軟以前開發企業應用程序的平臺DNA ? ( ? Distributed ? NetworkArchitecture),其中包括了許多已經被證實的技術,并且這些技術已經在產品中得到實現,包括微軟的事務服務器、COM+、消息隊列、SQL ? Server ? 數據庫等。而對于擴展性,廣為業界接受的事實是.NET ? 平臺的擴展思想是基于軟件的橫向擴展,而J2EE ? 平臺的擴展思想則是基于硬件的縱向擴展。這也符合微軟和Sun各自的產品利益。但是我們還需要細看這個問題,.Net ? 技術源于DNA ? 技術。眾所周知,DNA技術可能能夠解決部門級應用的問題,但是在大型企業應用中就不是那么適合了。其實,從微軟這家公司的歷史背景就可以看出這個問題,微軟從來不是一個老牌的企業級解決方案的提供者,它是從DOS、Windows ? 等桌面操作系統起家的,在購買了一個企業級操作系統開發出Windows ? NT ? 后才開始進入企業級解決方案市場。與IBM、HP、Sun ? 等一直從事企業級應用的提供商相比,其技術和支持力量還顯得稚嫩。尚沒有大多的成功案例和解決方案。而J2EE ? 卻是這些企業級解決方案的提供商所力推的,所以J2EE ? 在企業中有大量的成功案例和解決方案。這些可以從世界各種大企業的IT ? 應用系統的實際情況可以看出。世界上大多數企業的IT ? 系統中,使用J2EE ? 技術的遠遠大于. ? Net。可以這么說,.Net技術尚沒有太多比較成功的實施案例。??