原创
作者:编译/周雪峰 2011-03-28 10:01:59
云计算
虚拟化 虽然我们对此表示欢迎,但是我们已经有微软的PaaS平台Windows Azure了,它在云应用程序开发领域已经根深蒂固了,因此,对于走在云应用程序开发之路上的企业来说,对VMware vFabric和Windows Azure的常见特性做一个对比分析是很有现实意义的。
创新互联建站是专业的双清网站建设公司,双清接单;提供做网站、成都网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行双清网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
VMware vFabric云应用程序平台:
最近,VMware推出了它自己的云应用程序平台策略和解决方案,让开发者可以更轻松地构建和运行的现代的应用程序,这些现代的应用程序可以智能地把工作分配到底层的基础设施上,让应用程序的性能达到最优,更好地利用服务和基础设施。
这个云应用程序平台由Spring Java开发框架和一些平台服务(其中包括轻量级的应用程序服务器,全局数据管理,支持云的消息传递,动态的负载均衡和应用程序性能管理)组成。
对于云来说,更多PaaS(Platform as a Service)解决方案的出现绝对是一个利好消息,因为PaaS可以给那些想要采用云技术的组织提供必要的可扩展性。
虽然我们对此表示欢迎,但是我们已经有微软的PaaS平台Windows Azure了,它在云应用程序开发领域已经根深蒂固了,因此,对于走在云应用程序开发之路上的企业来说,对VMware vFabric和Windows Azure的常见特性做一个对比分析是很有现实意义的。
Windows Azure VS VMware vFabric
多层应用程序的设计模式
Windows Azure:
Windows Azure目前支持下面这两种类型的角色:
web角色:Web角色是专门为编写IIS7和ASP.NET支持的Web应用程序而定制的一种角色。
Worker角色:Worker角色主要用于一般性开发,或者为一个Web角色执行后台任务。
在我的文章《Windows Azure Design Patterns》中解释了如何使用这个平台来构建多层的应用程序。
VMware vFabric:
vFabric Enterprise Ready Server(ERS)是VMware vFabric云应用程序平台的Web服务器和负载均衡组件。
vFabric tc Server是VMware vFabric云应用程序平台核心的运行时服务器。
从某种意义上来说,ERS和tc Server也可以扮演Web角色和Worker角色那样的角色。但是我们必需要了解一下它们在vFabric可能会被部署于其上的各种平台(例如:force.com)上的按需分配功能。
#p#
开发平台
Windows Azure :
Windows Azure目前支持下面这些编程语言:
因为Windows Azure内置了.NET Framework,所以它全面支持像C#,VB.NET那样的主流语言。
不只是编程语言,在Windows Azure上构建应用程序,开发者还可以利用上他们现有的Visual Studio经验。
大多数复杂的任务(例如:针对云的发布,部署)都可以在Visual Studio这个IDE中,通过简单的右击方式来完成。
VMware vFabric:
如上所述,vFabric是一个100%的Spring Java开发框架,目前还不支持其他的编程语言。
SpringSource Tool Suite(STS)为构建基于Spring的企业级应用程序提供了最好的,基于Eclipse的开发环境。STS提供的工具支持所有最新的企业级Java,基于Spring,Groovy和Grails的技术,以及最先进的工具都可以用于企业级的OSGi开发。
但是我们必须要了解这些用于开发的IDE是怎样和目标云平台(例如:vmforce,EC2)进行集成的。
#p#
关系数据库和NOSQL支持
Windows Azure:
SQL Azure是流行的SQL Server关系数据库的云变种,由于具有以下这些特性,它会继续处于领导地位的:
更短的学习周期,或者根本就不需要学习周期
继续使用现有的工具
对云的支持
丰富的界面和开发工具支持。
SQL Azure提供了同样的Tabular Data
和这个数据库进行通信的Stream interface(TDS)也可以用来访问内部(on-premise)的SQL Server数据库。因此,使用SQL Azure,开发者可以使用和构建SQL Server客户端应用程序一样的工具和库。
Windows Azure还为非结构化的数据提供了NOSQL存储选项:
Binary Large Object(BLOB)Service是使用Windows Azure来存储文本或二进制数据的最简单方法。
对于需要附加结构的大量数据来说,Table Service会更合适一些,如果应用程序需要使用的数据的查询方式很复杂,那么它可以很好的发挥作用。
VMware vFabric:
vFabric GemFire是vFabric云应用程序平台的数据管理组件。
VMware的官方主页的说明如下,GemFire融合了各种先进的技术(例如:复制,分区,数据感知路由,连续查询),它可以提供一般数据库无法提供特性:实时的,可以灵活扩展的数据访问。
使用GemFire,你可以获得横向的扩展,更快的数据吞吐,最小的延迟和持续可用性,以及一个数据库具有的可靠性和数据管理能力。
因为它是一个“内存”数据库,并且构建在JVM之上,所以,它想要大型数据集和数据库编程便利性(这需要强大的,面向过程的,第4代语言(例如:PL/SQL或TSQL)的支持)方面一鸣惊人还需要一定的时日。
但是,Gemfire的架构展示了许多可扩展性方面的特性(如果配置合理的话)。它需要花费一定的时间才能进入主流的数据库编程领域。我们可能需要密切地关注新的应用案例和这个模型支持的设计模式。
#p#
“内部(on-premise)”的整合
Windows Azure :
Windows Azure Appfabric Service Bus提供了安全的消息传递和连接功能,让开发者可以在云中构建分布式的,离散的应用程序和跨越“内部”(on-premise)和云的混合式应用程序。它可以使用各种通信和消息传递协议和模式,让开发者完全不用为传送保障,可靠的消息传递和扩展而担心。
Access Control可以让你用更简单的方式来提供针对Web应用程序和服务的身份标识和访问控制,它集成了标准的身份标识提供程序,其中包括各种企业目录服务(例如:Active Directory),和各种Web身份标识(例如:Windows Live ID,Google,Yahoo!和Facebook)。
Microsoft SQL Azure Data Sync目前还处于CTP(Community Technology Preview)阶段,它是一个构建在Microsoft Sync Framework之上的,基于云的数据同步服务。它提供了双向的数据同步和数据管理功能,有了这些功能,我们可以更加轻松地在多个SQL Azure数据库之间共享数据,或者更加轻松地在内部数据库和SQL Azure数据库之间共享数据。
VMware vFabric:
在现阶段,vFabric在这方面的所有属性都比较差。
RabbitMQ提供了健壮而可靠的跨系统消息传递功能,对于基于云的应用程序来说,这是至关重要的。一个支持云的消息传递服务可以让应用程序和内部(或外部)数据中心之间的通信变得更加容易。
但是,在这个平台上,缺少至关重要的数据集成工具。
目前来说,应用程序服务器tcServer可以100%地和Tomcat服务器兼容。但是,要迁移企业级的应用程序,企业级的应用程序服务器(例如:Web Logic,Web Sphere)的支持是必不可少的。
我们还需要和内部的目录服务,访问管理程序进行安全方面的整合。
#p#
总结
Java EE是一个主流的企业级平台,像vFabric这样的PaaS平台的出现是非常令人兴奋的。这给现有的,基于Java EE的应用程序迁移到云中提供了多种选择。这里所做的和Windows Azure的对比分析只针对新的云应用程序或构建新的SaaS。我们希望这些平台可以添加更多的新特性来推动SaaS市场向前发展。目前,对于一个新的应用程序来说,Windows Azure才是首选,但是,对于把现有的Java EE应用程序迁移到云中来说,vFabric是一个更好的选择。对于优秀的企业来说,我们一定可以看到它们之间进行整合的一面。
原文名:Windows Azure vs VMware vFabric 作者:Srinivasan Sundara Rajan
【本文乃51CTO精选译文,转载请标明出处!】
当前题目:全方位比拼WindowsAzureVSVMwarevFabric
文章出自:http://www.gawzjz.com/qtweb2/news21/2171.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联