| 项目咨询 |积分体系 | 加入收藏 | 设为首页 | RSS
您当前的位置:首页 > 市场 > 百科 > 技术 > 中间件技术

IBM WebSphere应用服务器和Kingdee Apusic应用服务器的综合对比

时间:2011-04-11 11:49:42  来源:  作者:
更多

 

超过9,000 家独立软件供应商支持 WebSphere. 全球最大的100个软件公司中有31个是应用程序供应商,其中有27个是基于WebSphere在开发,而这些公司中目前没有基于Apusic开发的。
WebSphere应用服务器(下面简称为WAS)处于市场第一的位置。
WebSphere应用集成中间件处于市场第一的位置
附表实际数据:
1.Gartner在2007年6月发布的全球中间件市场份额数据。

产品名称
市场份额
市场排名
IBM WebSphere应用服务器
38.4
#1

 

IBM 门户、流程和中间件
31.8
#1

 

Kingdee Apusic
?
?

2. Gartner魔力四象限图显示,Kingdee属于市场落后位置。
 
 
WebSphere应用服务器从上世纪90年代诞生到现在,经历了大量复杂场景、高并发、高负载、高性能要求以及各种复杂应用的洗礼和考验,是一个非常成熟和可靠的产品。
WebSphere应用服务器最新版本目前为WAS 6.1。WebSphere应用服务器每一个新版本的推出,都吸收了前一个版本在实践中总结的宝贵经验,对功能和性能都有卓越的改进。
而Apusic 2004年才首次通过J2EE认证,且J2EE认证只是对产品基本功能的认证,Apsic其功能和性能的完善还需要市场的考验和相应的时间。
WebSphere应用服务器在各种复杂场景特别是异构、高并发、高负载的情况下,在金融、电信、政府、制造业、流通领域等等各行各业,都有着大量成功案例。几年以来,IBM在全球成功实施了数以万计的电子商务应用以及综合信息平台,积累了丰富的实施经验;同时IBM在本地提供了强大的技术支持和服务能力。这些经验和支持将在很大程度上保证用户在实施电子商务的过程中取得成功。
在Apusic官方发布的成功案例中,大多集中于中小企业,或者大型企业的非关键业务系统。从其公布的成功故事不难发现,在Apusic上运行的系统多为非关键业务系统或者对安全、性能和事务等要求不高的普通系统,例如综合信息平台、各类OA系统等,Apusic缺乏对于大数据量、高性能、高并发、高安全性等要求较高的系统的成功案例。而对于国际和国内各大银行、电信、证券交易等对应用服务器性能、可靠性、事务和安全性等都要求十分苛刻的用户,WebSphere都有着支撑它们关键业务的成功案例。
 
开放标准及跨平台
ü WebSphere应用服务器在所有主流平台都已通过J2EE1.4认证(http://java.sun.com/j2ee/compatibility_1.4.html),包括WindowsAIX, SolarisHPUX LINUX请参考SUN官方认证网站http://java.sun.com/j2ee/tested_config/ibm60.htmlApusic只在Windows平台通过J2EE 1.4认证请参考SUN官方认证网站http://java.sun.com/j2ee/tested_config/kingdee14.html
ü 按照国际通行惯例,软件宣称支持某平台时,需要明确列出支持的平台的版本、平台要求,现实地兑现客户承诺。在跨平台上,Kingdee宣称支持多种硬件平台,但其没有实际平台版本列表,只是泛泛地用WindowsLinuxUNIX一带而过,连接后台数据库也是如此,同时,Apusic也没有充分的客户案例来说明支持什么样的UNIXLinux平台。从而让客户在跨平台选择上面临极大风险。
ü  J2EE标准的支持上:IBMWebSphere应用服务器通过了J2EE的认证许可,同时还对J2EE中的许多规范做了一定的增强,以满足企业应用对稳定性、安全性、高效性的需要;Kingdee Apusic基本上只是满足基本J2EE认证的一个裸应用服务器,使用时留下大量工作需要客户自行完成。
ü IBM领导了J2EE、Web Service、SOA、普及计算以及多渠道访问的领先技术,而Kingdee Apusic只是这一技术的追随者。对开放标准的领导需要资金和技术的支持,IBM每年在WebSphere领域中投入10亿美元左右的资金,这一数字比Kingdee公司多年的总收入还要多。
 
综合上面的描述,我们不难看出,IBMWASJ2EE标准的支持更彻底、更成熟,能提供更适合企业级应用的运行环境,满足大规模用户对完整性、高效性、易用性的要求。


 
技术对比
IBM除了100%对开放标准JAVA/J2EE、Web Services的支持外,采用了大量真正保证客户企业级应用平滑运行的成熟技术,具有真正的实际意义。
对Java事务服务的支持
WebSphere支持广泛的平台,可以对后台的关系数据库(DB2、Oracle、Sybase、Informix、Microsoft SQL Server)、消息中间件MQ、交易中间件TXSeries等资源实现真正的、可靠的两阶段提交,保证大型应用中事务的完整性,并且可以与主机(OS390)上的WAS实现两阶段提交;而Apusic现在公布的信息中,无法看到与Informix、MS SQL、 CICS、IMS、Encina、MQSeries或OS390上的资源实现两阶段提交的任何技术资料、用户案例,不能保证用户事务的完整性。
注:IBM软件一直定位于企业级软件产品的提供商,因此在企业计算领域积累了大量的经验。
对Java消息服务的支持
WebSphere中除了内含J2EE 1.4所要求的JMS 1.1(纯JAVA实现)实现外,还可以通过MQSeries完全支持JMS的规范,可以实现数据库与消息的两阶段提交,并且可以通过IBM的开发工具快速地开发出符合要求的程序,也可连接第三方的JMS服务器,是适应企业应用的首选;而Apusic的消息服务本身的消息服务只能选择文件系统存储,而且没有考虑应用服务器与第三方消息提供产品、以及市场上最主流的消息产品MQ的集成。因此我们可以说,如果用户希望一个只是用于演示的JMS环境,那么选择Apusic;如果需要一个健壮的、高效的JMS环境,只有WebSphere满足。
 
对J2EE连接器的支持
首先,我们要说明J2EE连接器(Connector)是由IBM公司最先提出的设计思想,并付诸实施(CCF)。在WAS中,通过Connector我们可以与OS390上的CICS、IMS等资源互连,并可以和CICS、IMS、HOD (Host on Demand)、SAP、PeopleSoft、Oracle ERP Financials、JD Edwards、Tuxedo (through XMLink - Prolifics)等企业资源方便连接,通过IBM提供的工具,所有的实现都是一个简单的过程;而Apusic没有相应的适配器支持,也没有经过实际的验证,满足和上面所述资源的连通性。
说到高可靠性及高可用性方面,这是IBM引以为傲的技术。WebSphere可以通过透明的集群技术为所有的服务器实现智能的工作负载均衡。
ü WAS和Apusic都通过集群技术来进行负载均衡,但管理难易程度相差巨大。在拓扑结构上,Apusic的集群环境中无统一管理的组件,无法在统一视图中管理整个集群环境,是一种非常初级、繁琐的拓扑结构,没有结点、域、统一管理者等概念。而WAS有着成熟的、结构清晰的单元、结点、应用服务器层次结构,方便了集群环境的扩展和管理。
ü IBM WebSphere Application Server提供了简单的菜单设置方法来实现异构的Cluster技术。从用户来的角度来看,他根本不用关心怎样在一个平台上实现Cluster技术,只需要通过简单的菜单,按照“新建群集—新建集群成员”的简单流程点击按钮、输入集群名称就可以复制出自己想要的异构集群环境,然后安装一次应用,就可轻松实现应用的扩展。如果要修改部署在集群上的应用,只需修改1次即可。如果需要配置资源等参数,只需要进行1次操作。如果需要新增集群成员,只需要添加成员,同步即可。不需要再次安装应用或者配置资源。而对于Apusic来说,虽然产品支持同时向多个服务器部署应用,但是如果客户建立了具有n个集群成员的集群,希望新增1个集群成员,则必须在这个集群成员上重新加入应用,配置资源,然后手工修改服务器配置文件配置负载均衡器,才能升级其集群环境,这个过程非常麻烦而且容易引入错误。
ü 除了易用性的差别之外,更重要的是,集群技术要求各个集群成员上运行的应用必须完全一致,才能正确提供对于用户访问的透明性。在WAS中,这种应用在各个集群成员上一致性的保障是通过WAS服务器集群技术来保证的,应用安装在集群上,就会自动分发到各个集群成员上(保证了每个集群成员上的应用都一致),并且在运行过程中还会由统一管理者(Deployment Manager)去监测每个集群成员上应用的一致性,如果某个集群成员由于外界因素改变了应用,会被Deployment Manager同步成与其他集群成员保持一致。这样很好地保证了整个集群系统能透明地对外提供服务。而对于Apusic来说,集群上应用的一致性是由人手工来维护的。这就意味着,如果在集群的应用部署中,由于管理人员疏忽在不同集群成员之间部署的应用不一致,Apusic不能检测这种不一致,从而造成最后用户访问的失败或者前后不一致。
ü WebSphere应用服务器还支持不同版本的集群,比如在一个集群里面可以有版本5的节点也可以有版本6的节点。这种特点对于生产系统的升级非常有好处。Apusic无法在统一管理不同历史版本。
 
WAS支持各个层面的负载均衡,包含负载均衡软件
除了WebSphere应用服务器内部的群集管理外,WebSphere应用服务器中还内置了Edge组件,提供了一个可伸缩的负载平衡方案,它可以处理HTTP、 FTP或别的基于TCP的服务。当一台服务器或一组服务器的负荷增加时,Edge组件会自动重定向新的访问流量到空闲的或更轻松的服务器,从而保证了对用户最快速的响应。此外,Edge组件的的缓存代理服务的缓存功能可以用来加速客户响应时间,减轻系统压力。而Apusic缺乏相应的Web层面的负载均衡软件的支持,用户不得不购买额外的硬件或软件产品来实现相应的功能。
WebSphere的集群技术带来的高性能和高可靠性是有目共睹的。例如2000年悉尼奥运会网站,EBay电子港湾和温布尔登网球公开赛的Web应用等这样超大规模应用系统的成功构建和维护,也是IBM全套解决方案的完美体现,其中集群技术功不可没。
 
在Apusic网站发布的文章中提到,“只要通过了J2EE 1.4认证,功能和性能差别就很小”。事实上,J2EE认证只是测试产品通过了测试集,满足J2EE规范最基本的功能要求,对于性能并没有做出认证。而在实际应用中,J2EE应用使用中遇到最多、难度最大、用户最关心的也正是性能问题。
SPECjAppServer2004是评测Java 2企业版(J2EE)应用服务器实际性能的权威基准。在SPECjAppServer2004行业性能指标评测中,WebSphere应用服务器超出其它竞争对手64%,详见http://www.spec.org/osg/jAppServer2004。而Kingdee Apusic目前为止没有发布经第三方权威机构评测的性能指标。
在出现性能问题时,WebSphere应用服务器免费提供针对应用服务器运行状态进行检测和统计分析的工具Tivoli Performance Viewer(TPV),从而可以对系统进行有效的监控,并指导其后的优化工作。Apusic也有类似的效率查看器,但二者功能、易用性上差别很大,例如:
WAS的TPV能够针对用户要求设置不同粒度的监控级别,并有更多的监控项(或者称为度量标准)可供选择,从而在需要时能有效降低性能监控带来的Overhead,或者进行更细粒度的监控,而Apusic不能设置监控级别,其监控项也十分有限。
WAS的TPV能将各项指标绘制在同一张图或者表中,并能将性能数据录制成日志,以便日后回放,更好地进行性能问题分析和诊断;而Apusic的效率查看器只能单独查看每一项,并且不能录制性能数据进行回放。
另外,WebSphere应用服务器还免费提供性能顾问向导(performance advisor),对服务器当前性能数据和设置给出智能化的建议;Apusic未见此类智能化工具。
WebSphere应用服务器采用了大量Cache机制、Pooling技术来提高服务器性能,让客户能根据自己的硬件环境、应用特点来进行性能调优,并有大量的技术文档和实施文档来支持这种性能调优工作。而Apusic对性能调优工作只是一带而过,目前在其知识库中搜索到的有关性能调优的相关文章非常少。
 
WAS是一个成熟的商用服务器,内置丰富的安全性特征,提供了端到端(end-to-end)的安全解决方案。在认证方面,WebSphere 既可以采用基于userid/password进行认证,也可以采用基于X.509证书的认证(SSL)。WebSphere Application Server所带的Web服务器(IBM HTTP Server)和应用服务器都支持SSL,保证了数据传输的安全性;用户条目允许应用程序采用操作系统、LDAP或者定制方式作为用户信息注册表,支持"单点登录,全网漫游"。
在对WAS资源的管理上,WAS管理控制台可以定义管理员、监控员等多种身份,对资源的控制具有不同权限。同时,WAS还提供了细粒度的安全控制,可以分别控制单元、结点、服务器、集群、应用等级别的资源,每一级别的资源都可以设定响应选择的管理组,从而提供了更完备的安全性。
另外,WAS管理控制台可管理密钥,另外还提供了密钥管理工具ikeyman,方便了SSL配置时的密钥、证书创建和管理。
而在Apusic管理控制台及相关文档中,只提及了管理控制台的安全性及如何配置SSL(需要借助第三方工具Openssl生成密钥文件),而支持的认证方式、支持的用户条目、分角色、细粒度的安全控制等等都没有提及。
 
 
WAS和Apusic都可以通过管理控制台和命令行方式进行管理,但Apusic通常采用命令行,使用非常繁琐,且暴露的管理接口非常少,无法满足用户的实际需求。从使用体验上比较起来,WAS的管理更加简捷方便。例如:
WAS具有功能强大的安装工厂,使用自治管理技术,能将WAS的安装包、维护包、WAS的配置、安装在WAS环境上应用组合起来,形成一个定制的安装包。从而让“一次安装、多次复制”称为可能,极大的降低了安装成本。
WAS的管理控制台对于消息服务、Session管理、数据源配置、应用部署等,都有各种细粒度的选项,让用户可以更好地控制应用服务器及应用的行为;而Apusic更像是一个初级版满足最低要求的应用服务器,只涵盖了最基本的内容。例如:Session的管理,在Apusic的管理控制台中只能在应用服务器和web应用级别控制Session的概念,而且对web应用级别的Session管理未在基于IE浏览器的管理控制台看到如何设置;而在WAS的管理控制台中可以看到Session管理是分级别的,可以分别在应用服务器、应用、War模块级别分别进行设置,除了Apusic Session服务涉及的范围外,还包括会话跟踪认证机制、是否允许Session溢出等,极大地方便了用户根据自身需求调节应用服务器的表现。基于Web页面的管理控制台中,应用部署过程更是只有1个上传按钮,缺乏对应用部署的细粒度控制,如果需要细粒度控制需要到专用的Apusic部署工具中进行,造成了使用的不便。
WAS管理控制台中可控的每一项都有详细的附加说明和联机帮助文档(集成在管理控制台中),而Apusic管理控制台中基本看不到帮助信息。用户必须得另外阅读产品文档。而且,WAS的管理控制台是可定制的,用户可以定制管理控制台让其只显示平常惯用任务,让控制台更加简洁,降低用户的管理成本。
当配置出错时,WAS的管理控制台可以直接打印出出错提示信息,而Apusic管理控制台不会显示任何信息,用户得切换到另一个命令行窗口中,才会看到非常不友好的出错信息提示。
日志是进行错误诊断的重要依据。对于日志的管理上, WAS可以控制日志的长度或者截至时间,从而有效防止日志过长影响服务器性能;而Apusic的管理控制台中没有类似设置。WAS具有多种日志、并提供多种工具对日志进行分析和诊断,如日志分析器,线程分析器等等。Apusic中未见到此类工具。
Apusic的集群环境是一种非常初级、繁琐的拓扑结构,没有结点、域、等概念,从而不能控制和保证整个集群环境下应用和集群成员的一致性,使得集群环境下管理人员必须不断重复同样的工作,既浪费时间,又容易引入错误。同时,还使得资源的配置等必须在每一个服务器的级别上进行,缺乏逻辑上的控制,造成整个过程异常繁琐。有的情况下必须手工更改XML文件。这些限制对Apusic环境的扩展和复杂环境的管理都造成了极大的麻烦,并使得引入错误的可能性极大地增加。
在多台服务器的环境下,WAS有“单元”和统一管理者(Deployment Manager)的概念,可以对多台服务器在同一个管理控制台中进行集中管理。而Apusic缺乏这种集中管理的概念,在复杂环境下大大增加了管理难度。
WAS具有功能强大的脚本自动化工具,能非常容易地创建wsadmin自动化操作脚本,用以管理和配置WebSphere Application Server。对完全不熟悉wsadmin语法的管理员来说,可使用控制台完成任务,并使用自动化工具获得等价的wsadmin语句。在WAS产品包自带的AST工具中,还提供了开发和测试wsadmin Jython脚本的自动工具集。从而大大降低了管理成本。
 
目前IBM WebSphere的开发工具RAD是JAVA领域中最为优秀的工具,它基于开放源码的Eclipse技术,集Java/J2EE、XML、WebServices开发;网页(HTML、JSP、JavaScript)、图片可视化编辑;人性化网站建设工具集;测试、调试、团队开发工具集于一身。它所提供的功能和方便易用性是业界其它工具都无法比的。
同时,WebSphere应用服务器中也自带了基于Eclipse的开发和部署用具:Application Server Toolkit,提供基于WAS的应用创建、组装部署支持。
Apusic提供的基于Eclipse的开发工具Apusic Studio功能非常少:
ü 没有集成的profiling工具,应用错误诊断非常不方便
ü 不能很好地支持单元测试,无法自动产生Web服务、EJB等单元测试的代码
ü Web开发缺少一些关键功能,没有Page和Site模板支持,没有JavaScript debugger,没有SDO的支持,不支持Web服务直接拖放到网页上等等
 
注:Eclipse最初是由IBM开发的框架,并最终建立成一个源代码开放的组织。
 
 
WAS丰富的功能扩展
WebSphere应用服务器除了支持标准的J2EE规范之外,还提供了众多的功能扩展,帮助客户降低总体拥有成本。
WebSphere应用服务器支持会话发起协议(SIP) Servlets,用以降低SOA在发展中包含越来越多的应用(例如语音、视频和即时通信)而带来的复杂性。SIP协议是一种应用控制层协议,可以用来创建、修改和终止多媒体会话,传递多媒体数据。WebSphere应用服务器提供了JSR 116 SIP Servlets的支持,方便了协作式应用的开发。
WebSphere应用服务器支持JSR 168 Portlets,提供了Portlet容器。从而让客户可以在WAS上运行基于Portlets开发的功能更丰富、展现更灵活的应用。
 
由于WAS丰富的功能扩展,使得客户能够在WAS上运行新一代的聚合应用,使用SIP Servlets、Portlets、Servlet等各种技术创建功能强大的Web应用。
 
用户需求往往要超出一个简单的WEB应用,因此在很多情况下,这些需求不是单独一个J2EE应用服务器所能满足的。因此,我们在考虑应用服务器平台的时候,需要把已有企业信息应用的集成,未来企业信息系统的发展等都考虑在一起。
完整性(Completeness)是WebSphere及其家族产品鲜明的特点和优势。WebSphere电子商务平台涵盖了包括流程建模,运行平台,开发工具,运营管理与维护,快速开发个性化应用和普及计算应用的中间产品等方面,而且各个产品组件之间具备无缝的集成。
下面是IBM关于企业信息系统集成以及搭建面向服务架构的参考架构图:
 
Ÿ  
在这些领域,IBM都分别有在市场上处于领先地位的成熟产品。
而对于Kingdee来说,目前主要推出了Apusic、Apusic MQ和BOS三个中间件产品,且功能较为初级,距离完整、成熟的解决方案还有很长的路要走。
 
 
Kingdee这样的中小型公司由于公司规模和资金的限制,服务很难覆盖应用中间件领域如此众多的用户和多种形式,加之其精力基本都投入在了售前的部分,产品一旦售出就无力支持,在实际项目中使客户承担很大的风险
IBM在中间件上的投入(WebSphere)巨大,其中,JAVA研发人员超过3000人,WebSphere的研究人员超过700人。仅仅在2001-2002年,就在WebSphere领域中投入10亿美元。
相应的IBM分工十分明确。IBM中国软件部,在北京我们在WebSphere家族的售前工程师就超过18人,全国有超过30人的WebSphere售前工程师。除此之外,IBM中国软件部还有庞大的支持合作伙伴的队伍,以及负责售后服务的Service Team,都由大量经验丰富的工程师组成。特别的,从2005年开始,IBM建立了一个超过200人的Lab Based Service Team,依托于IBM在国内的实验室力量(IBM中国研发实验室有近2000名工程师和科学家)为客户提供各种高级服务。
此外,IBM对用户提供大量WAS产品文档、JAVA/J2EE、XML、开放标准、开发、技术前沿的网站:
针对开发人员,介绍WAS使用技巧、开发技能和经验、JAVA/J2EE、XML、开放标准、技术前沿:http://www.ibm.com/developerworks 及其完全中文化的国内网站http://www.ibm.com/developerworks/cn
详尽的产品学习书籍:IBM提供红皮书网站(http://www.redbooks.ibm.com ),提供大量的PDF格式的电子书免费下载。
Kingdee的Apusic所有信息目前都发布在一个小型网站上,上面提到的任何一个WAS相关支持网站都比现有的Apusic网站内容更为丰富。例如,对于WAS产品的电子学习书籍,就分为基本管理、高可用性、安全等几本书籍,详细介绍了WAS产品的架构以及强大功能。
IBM WebSphereIBMIBM
VAJ+StudioRAD IBMRADRational Application DeveloperWeb ServicesXMLKingdee ApusicApusic Studio
IBM WebSphere EcPerfhttp://www.spec.org/jAppServer2004/
WebSphereKingdeeApusicKingdee Apusic
WebSphere
IBM WebSphereDB2InformixSybaseOracleSQL ServerApusic
WASSIPPortlet
ApusicIBM
 
来顶一下
返回首页
返回首页
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
栏目更新
栏目热门