萝卜青菜的BLOG

路漫漫其修远兮,吾将上下而求索!~
随笔 - 21, 文章 - 10, 评论 - 6, 引用 - 0
数据加载中……

J2EE 与.Net 的比较

(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技术尚没有太多比较成功的实施案例。  

posted on 2006-11-27 17:32 萝卜青菜 阅读(504) 评论(0)  编辑  收藏 所属分类: 技术类


只有注册用户登录后才能发表评论。


网站导航: