微软(中国)有限公司_第1页
微软(中国)有限公司_第2页
微软(中国)有限公司_第3页
微软(中国)有限公司_第4页
微软(中国)有限公司_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.Net vs. J2EE刘 灏微软(中国)议程.Net回顾J2EE体系架构.Net 与 J2EE的比较MiddleWare .Net/J2EE 指标测试总结.Net 回顾.NET 技术架构Windows公共语言运行时.NET Framework安全组件组件组件组件Biztalk 适配器Biztalk编排服务企业服务消息队列.Net 应用体系结构Non-Web ClientsData TierWeb TierIIS-01SQL ServerMiddle TierWebBrowserWeb Service.Net ComponentsTransactionMessage QueueADO.Net

2、ScalabilityMonitoringSecurityWeb ClientsWinFormASP.NetTransactionMessage QueueADO.NetScalabilityMonitoringSecurity企业应用平台应用服务器工具管理 +分析集成内容管理无线/移动数据商业缓存/ 代理 / 放火墙合作操作系统Application ServerToolsManagement +AnalysisIntegrationContent MgmtWireless/MobileDataCommerceCache / Proxy / FwallCollaborationOperati

3、ng SystemMicrosoft.Net 平台CS2000BizTalk / HISExchange / SPSContent Mgmt ServerMobile Info ServerSQL ServerWindows ServerISA ServerVisualStudioVisio3rd partyAdd-onsApp CenterMOMBiz AnalyticsVisual StudioWindows Server, Enterprise ServersPassport, Alerts, .NET My ServicesWindows XP, Windows CE, Pocket

4、PC, Office 软件平台.NET Framework 架构WindowsCOM+ Services通用语言运行环境(CLR)基类库(Base Class Library)ADO.NET and XMLASP.NETWindows Forms公共语言规范(Common Language Specification)VBC+C#JScript通用语言运行环境(Common Language Runtime).Net应用的运行环境管理运行代码确认类型的安全性提供垃圾收集,错误处理 对半信任代码的访问安全控制提供公共类型系统可以访问系统资源本地 API, COM interop软件构造的突破-基

5、于特性的编程统一的开发模式.Net FrameworkWindows 应用Web 应用移动设备应用MMIT.Net Compact Framework多语言开发统一的对象系统只要选择喜欢的语言使用即可不需要学习更多的规则或API先进的多语言互用功能跨语言继承,异常处理目前支持20多种语言 VB, C+, C#, Java, JScript, Perl, COBOL功能强大的工具调试器等可以跨语言工作.Net技术概览 展示层 , Windows Forms中间层 - .Net组件中间层可使用的企业服务事务服务 MTS消息服务 MSMQ目录服务 ADSI, UDDI对象池 Object Pooli

6、ng异步组件 Queued Component数据层 远层调用 - .Net Remoting/ Web Service利用现有资源 - .Net Interop / Web Service /BizTalk对XML的普遍内在支持DataDocuments & MsgsObjectsXMLSOAP, Serialization, RemotingXML DOM,XmlReaderXmlWriterJ2EE体系架构什么是J2EE?Java 2 Platform, Enterprise Edition (J2EE) 运用Java技术开发企业应用的标准包括了多层应用开发模型开发平台 - APIs 和

7、服务测试软件包 参考实现将所有Sun的企业技术集合在一个体系结构下的平台特定版本下的EJB, Servlet, JSPJava Web Server JNDI, JDBC, JTA, JMS, JavaMail, CORBA J2EE 技术架构任何平台Java虚拟机J2EE Framework安全组件组件组件组件JCAebXMLJTAJMSBrowserServletorJSPContainersEJB ServerBCHTTPEntityBeanHOMEREMOTESessionBeanHOMEREMOTEData J2EE 应用体系结构ADataJDBCRMI/IIOPJDBCAppSer

8、verIBM 平台Application ServerToolsManagement +AnalysisIntegrationContent MgmtWireless/MobileDataCommerceCache / Proxy / FwallCollaborationOperating SystemWebSphere IntegrationLotus / WebSphere PortalEveryplace ServersWebSphere Edge ServerVisualAgeforJavaWebSphereStudioTivoliWebSphere Site AnalyzerMult

9、iple Operating SystemsDB2 UDBWebSphere App ServerContent Mgmt ServerWebSphere Commerce SrvrJava 运行环境JVM - Java应用的运行环境编译运行Java语言管理运行代码类型安全内存管理异常处理跨越平台Windows/UNIX/LinuxEJBJ2EE的中间件技术Session Bean传统的对象无隐含的数据映射编写你自己的数据访问代码Entity Bean对象等价于数据库记录提供数据映射方法Create, Load, Store and Remove BMP/CMPEntity BeanTrans

10、acted Entity BeanProperty true 意味着在每个事务的开始和结束都要读数据和写数据 (即使数据没有变化)Propery false 指仅在生成时读一次数据, 以后再也不读(即使数据已陈旧)Read-only Bean (BEA 特有的功能)BEA 特有的功能以防止在状态无变化时不调 Store 方法BEA 亦有刷新的设置可允许数据按时间间隔刷新只读的, 事务的 entity bean 行为类似于 .NET 中运用DataReader 的类 (每次读, 重不写)CMP Opt Tool 是 WebSphere 的优化读取 bean 的源代码, 判断数据访问模式, 删除不

11、必要的 Store调用Option A, B and C caching 亦可规定 bean 的数据库访问是否是排他的Option C意味着排他的数据访问, 所以 Store method 可以懒方式调用J2EE应用开发企业级Web应用的开发J2SE - Rich ClientJ2ME 移动设备应用开发均基于Java 2/JDKJ2EE技术概览展示层 ServLet/JSP中间层 EJB中间层可用的企业服务事务服务 JTA目录服务 JNDI消息服务 JMS异步组件Message-Driven EJB数据层 - JDBC远程调用 RMI/IIOP使用现有资源 - JCA对XML的支持J2EE标准

12、未包括对XML Web服务的支持各个厂商提供自己的方案支持UDDI/WSDL/SOAPWSI组织保证互操作性SUN的方案JAXP/JAXB/JAXM/JAXR/JWSDLJAX/RPCJAX Java API for XML .Net与J2EE 的比较技术架构整合WS-IWindowsCLR.NET 安全适配器编排服务企业服务消息队列LinuxJVMJ2EE SecurityJCAebXMLJTAJMS表示层业务逻辑层数据层J2EECLR.NET Assembly(可使用 COM+ 服务; 比如事务)Web 表单Server 控件Code-BehindIISJavaBeansEJBsJSPSe

13、rvlets可运行于大多数主要应用及Web服务器支持大多数数据库 (通过 Type 4 驱动程序)J2SE/EEJDBC (事务使用 JTA).NETSQL ServerOracleDB/2, etc.SQL ServerOracleDB/2, etc.Web 架构: J2EE vs .NET状态: ASP.NET Session,.NET 数据缓存状态: 封装于 EJB 中, 也可在 Web Sessions 中JDBC JTAJNDIJMSJavaMailRMI/IIOPJAF.Net/J2EE主要技术比较 .Net .Net TransactionActive Directory.Net

14、 MessagingSmtpMailWeb Services/RemotingJ2EE.Net JIT (Just In-Time Activation).NET与J2EE平台的详细对比技术.NETJ2EE支持技术发布协议DCOM, SOAPRMI/IIOP防火墙ISA*没有定义HTML页面缓存ISA*, ASP.NET没有定义表示层技术基础结构IISJWS程序设计模型ASP.NETServlets, JSP高可用性NLBS*, ACS*, 其他没有定义负载平衡NLBS*, ACS*, 其他没有定义中间层技术基础结构COM+EJB程序设计工具Visual Studio.NET没有定义高可用性A

15、CS*没有定义负载平衡ACS*没有定义安全性APICOM+ Security Call ContextJAAS消息队列APIMSMQJMS 1.0异步组件Queued (COM+)Message driven beans (EJB 2.0)命名与目录服务ADSIJNDI数据层技术分布式事务处理MS-DTCJTS关系型数据库APIADO.NETJDBC 2.0层次型数据库APIADO.NET-数据库存储SQLServer*-大型机数据库连接性HIS*Java连接器架构技术电子商务架构Commerce Server*-B2BBizTalk Server*-技术的成熟性MicrosoftJ2EE19

16、9619971998199920002001MSXMLJAXPASPJSPMTS/COM+EJBODBCJDBCMar 1992ADSIJNDIQCMDBLCEMMCWinDNAJ2EEMSMQJMS.NetEJB 与 .NET 组件比较Session Beans无状态有状态.NET 类无状态传统的对象无隐含的数据映射编写你自己的数据访问代码Entity Beans永远有状态.NET中无等价类 .NETJ2EE对象等价于数据库记录数据映射通过以下 4个方法:Create, Load, Store and RemoveBMP = 这4个方法由你自己编写CMP = container 提供这些方法

17、除了这4个方法再没有其它的数据访问Java阵营对EJB的看法J2EE项目中只有10%使用EJB“EJB makes Java look bad. ”Suns Java PetStore:“write your data persistence twice” . “bi-modal data access layer” IBM Redbook: 不要使用EJB, 用存储过程James Gosling, Borland Developer conference, May 2002You have to manage it by ignoring it. The complexity of J2EE

18、 is pretty exteremeTheres a dirty little secret about J2EE; most people dont need J2EE; XML Web Service 比较“.NET is a brilliant strategy that enables Microsoft to define the next shift in the software business.” - Gartner GroupAbility to ExecuteCompleteness of VisionMicrosoftIBMHewlett-PackardSunMicr

19、osystemsOracle*Source: Gartner Research, 9/13/2001Gartner Magic Quadrant: Major Vendor Web Services Platform Influence“Everyone should build on the XML/SOAP foundation.”- Meta Group“Gartner believes Microsoft is now providing more vision and influence regarding this shift than any other vendor.” - G

20、artner Group“.NET is a leading example of what we believe will be the dominant architectural model for the third generation of Internet applications.” - Patricia Seybold GroupJ2EE的移植性与互操作性理论上J2EE应用可以采用多个厂商的产品只要符合J2EE的标准实际情况J2EE标准不完整,如 Web ServiceJ2EE的技术需改进,如 EJB各厂商发展各自的技术不同产品很难协同和移植J2EE可选择同一厂商支持的不同操

21、作系统.Net的移植性与互操作性理论上.Net应用可移植到任何平台CLS提交给标准化组织只要支持CLR实际情况只有Windows/Free BSD.Net支持Web Service可以使用任何平台运行的Web Service任何平台可使用.Net Web Service技术比较结论.Net和J2EE应用有着相似的架构.Net和J2EE有相应的主要技术.Net所有技术来自MicrosoftJ2EE的技术有多个厂商的实现.Net和J2EE可以满足大多数应用的需求主要的差别不在技术的可行性上开发效率性能成本稳定性MiddleWare .Net/J2EE BenchmarkJava Pet Store

22、 是什么?Java Pet Store 是 Sun J2EE 的主要示例应用源代码: 展示了 J2EE 企业应用编码的最佳实践作为示例程序发布于Oracle Application Server 9iSun iPlanetBEA WebLogic在JavaOne 2001活动中作为 J2EE 的主要示例应用广泛地强调依照 SUN 的说法Java Pet Store 是.“一个展现如何最佳利用J2EE技术的完整的成熟的在线商店.”“一个展示了J2EE技术基本使用方法的示例应用程序,同时也展现了系统设计的最佳实践方法.“.NET Pet Shop是什么?Java Pet Store 在 .NET

23、架构上的实现源代码: :/team/compare实现了完全同样的功能 (v 1.1.2)以C#书写的完全分层的3层逻辑设计展示 .NET Framework 的最佳编程实践应用扩展以展示 .NET 对移动设备 (PDA, 手机) 的支持应用扩展以展示 .NET 对创建和使用Web服务的支持Middleware公司提供高级J2EE培训和咨询丰富的J2EE 开发经验和服务器技术建立并维护 领先的在线J2EE社区 注重于企业架构Middleware 指标接触 Microsoft 来重测J2EE / .NET 性能花了4个月 测试J2EE / .NET 性能新的全面的指标所有结果由Middlewar

24、e 公司取得并鉴定报告发布在 :/middleware-company/j2eedotnetbench可下载代码,测试脚本, 另有讨论论坛检测的指标Web 应用指标三层Web体系结构数据驱动的页面创建, 中间层商务逻辑, 中间层数据缓 存, 用户会话管理, 事务.分布式事务处理指标测试 .NET/COM+ vs. J2EE/JTA分布式事务管理运行24小时以测试可靠性包括性能 (TPS) 和价格/性能比 ($/TPS)指标Web 服务指标测试 XML Web 服务 (SOAP 1.1) 性能测试作为SOAP服务器和SOAP客户的应用测试的产品两个领先的, 商用的J2EE应用服务器因为许可限制,

25、 标记为J2EE应用服务器A和B用最新支持的JVMs, 由各个应用服务器的专家全面调节Windows 2000 AS 运行.NET Server 2003运行.NET Framework 1.1 所有测试用进行报告要点配置/调节 J2EE应用服务器花费巨大时间为匹配.Net性能, 每个J2EE应用服务器的调节花费了10个人-周的时间调节.Net应用只花了两个人-周的时间J2EE应用服务器在 MS Windows 2000 和测试应用服务器A 在Windows 2000的性能明显优于 Linux应用服务器B 在两个系统上的性能相当基于这些原因, 选择了Windows 2000作为测试平台 J2E

26、E应用服务器A 和 B 展示出完全不同的性能特性因为性能原因, Middleware 公司 抛弃了CMP实现 EJB基于 BMP的方案为避免性能问题, 必须在Entity Beans实现特殊的 “只读”接口Windows 2000上 运行.NET 1.0 轻易击败J2EE Server 2003上 运行.NET 获得更加明显的改进实验室配置在50/50配置下运行两个脚本只流览 脚本模拟用户访问和进行搜索, 观看产品详情 下单脚本包括搜索和订购随机物品下单过程包括5 页的购买过程最后一步是分布式事务分两个阶段向Orders 数据库 (加入定单和详情) 和Products 数据库 (更新库存)提交测试有/无图形下载的情形完整的错误检测/报告巨大的用户负载量以测试系统扩展到2, 4 和8 CPU的能力Web 应用指标Web 应用指标Web 应用指标Web 应用指标Web Application Benchmark事务集中的测试脚本只进行下单操作每个下单导致2-阶段提交的分布式事务事务由中间层管理 (应用服务器)测试使用COM+企业服务的 .NET 事务指标测试使用JTA的J2EE事务指标在尖峰负载下运行24 小时ecPERF只运行30分钟包含每个事务下价格/性能成本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论